2016-02-03 2 views
0

Я хочу добавить небольшой вид сверху сверху изображения с текстом «Оригинал», который должен отображаться только тогда, когда пользователь смотрит на исходное изображение.Subview не отображается после того, как я установил ограничение

вот моя функция toggleImage, когда пользователь нажимает на нее, изображение будет отображать исходное изображение (и появится сообщение с текстом «Оригинал»), а затем обратно в отфильтрованное изображение, когда пользователь поднимет руки ,

func toggleImage(sender: UILongPressGestureRecognizer) { 
    sender.minimumPressDuration = 0.3 
    if sender.state == .Began{ 
     imageView.image = self.rawImage! 

     view.addSubview(originalText) 


    }else if sender.state == .Ended{ 
     imageView.image = self.newImage 
    } 

Теперь я хочу установить ограничение на представление с текстом.

func toggleImage(sender: UILongPressGestureRecognizer) { 
    sender.minimumPressDuration = 0.3 
    if sender.state == .Began{ 
     imageView.image = self.rawImage! 

     view.addSubview(originalText) 

     originalText.translatesAutoresizingMaskIntoConstraints = false 

     let bottomConstraint = originalText.bottomAnchor.constraintEqualToAnchor(view.topAnchor) 
     let leftConstriant = originalText.leftAnchor.constraintEqualToAnchor(view.leftAnchor) 
     let rightConstraint = originalText.rightAnchor.constraintEqualToAnchor(view.rightAnchor) 
     let heightConstraint = originalText.heightAnchor.constraintEqualToConstant(44) 

     NSLayoutConstraint.activateConstraints([bottomConstraint,leftConstriant,rightConstraint,heightConstraint]) 
     view.layoutIfNeeded() 



    }else if sender.state == .Ended{ 
     imageView.image = self.newImage 
    } 

subView не отображается, как решить проблему?

вот скриншот симулятора, когда ограничение не было установлено. screenshot

ответ

0

У вас есть нижняя равна верхней:

let bottomConstraint = originalText.bottomAnchor.constraintEqualToAnchor(view.topAnchor) 

Ваше мнение, скорее всего, оказываемые за пределами экрана/за пределы представления.

Изменить это:

let topConstraint = originalText.topAnchor.constraintEqualToAnchor(view.topAnchor) 
Смежные вопросы