2013-06-26 1 views
19

Я работаю над приложением ios. Я автоматически добавляю автоматический макет к двум ярлыкам.ios auto-layout: Программно заданное ограничение ширины

Мне нужно добавить ограничение, чтобы сделать их равной ширины.

Я знаю, как установить ширину этикетки с помощью:

constraint = [NSLayoutConstraint 
    constraintWithItem:myLabel 
      attribute:NSLayoutAttributeWidth 
      relatedBy:NSLayoutRelationEqual 
       toItem: nil 
      attribute:NSLayoutAttributeNotAnAttribute 
      multiplier:1.0f 
      constant:200.0f]; 

Это было бы зафиксировать размер этикетки на константу. Но у меня есть 2 ярлыка, и я хочу, чтобы они имели равный размер без необходимости устанавливать константу.

ответ

16

Оказалось, что я просто должен сделать следующее:

constraint = [NSLayoutConstraint 
    constraintWithItem:myLabel 
     attribute:NSLayoutAttributeWidth 
     relatedBy:NSLayoutRelationEqual 
      toItem: otherLabel 
     attribute:NSLayoutAttributeWidth 
     multiplier:1.0f 
     constant:0]; 
+2

почему вам нужен toItem: otherLabel? –

+0

Идея состоит в том, чтобы сделать «myLabel» и «otherLabel» равной шириной. поэтому я поместил один из них в «withItem», а другой в «otherItem» – Youssef

+2

, что, если я просто хочу добавить ограничения ширины только к myLabel? что бы я поставил для «toItem». Я пробовал ноль, но это мало что делает. Спасибо –

 Смежные вопросы

  • Нет связанных вопросов^_^