2016-10-11 3 views
3

В моем раскадровки мой взгляд контроллер имеет два вида контейнера, как показано нижеГоризонтальные ограничения в прошивкой

enter image description here Второй вид контейнера его тон у меня возникают трудности с настройкой ограничений для.

Когда я фактически запускаю приложение, текстовое поле становится очень узким. Мои горизонтальные ограничения явно неверны, но я не могу определить правильные настройки.

Вот то, что я в настоящее время:

FilterIcon - trailing space to superview (right): 0 
      - Align Center Y 
      - Leading space to "Go": 16 
      - Equal height to text box 

Go Button - align center Y 
      - trailing space to filter icon: 16 
      - leading space to text box: 8 

Text Box - leading space to superview (left): 0 
      - trailing space to Go Button: 8 
      - equal height to Filter icon 
      - horizontal hugging priority: highest of 3 elements 751 

Я думал, что текстовое поле будет расширяться от левого края, пока не достигло поля Go, который установлен справа на основе значка фильтра.

Вместо этого я получаю этот результат: enter image description here

Что я отсутствующий для ограничений?

+0

Попробуйте авто с ограничениями ... – Joe

+0

Попробуйте добавить ограничение ширины в textField. или вместо этого добавьте ограничение ширины для фильтрации значка и кнопку go. –

+0

добавление приоритета к значку фильтра и «идти» должно быть быстрым исправлением. – Joshua

ответ

1

Как насчет настройки такого типа?

Text Box

  • ведущего пространство надтаблицы (слева направо): 0
  • отставая пространства Go Button: 8
  • равной высоты Иконки Фильтр
  • горизонтального приоритет сжатия: 752

Идти

  • По центру Y
  • заднего пространства для фильтрации значка: 16
  • ведущего пространства для текстового поля: 8
  • горизонтального приоритет обниматься: 251

Фильтра Значок

  • горизонтальных обниматься приоритет: 251
  • Выравнивающий центр Y
  • Ведущего пространство «Go»: 16
  • Равной высота текстового поля

Вот мой скриншот.

enter image description here

Если вы не хотите, чтобы установить приоритеты, вы можете просто установить ширину ограничений для обоих фильтров Icon и Go Button.Для получения дополнительной информации есть очень хорошее руководство по приоритету обхода контента и приоритету сопротивления сжатию here

+0

Это сработало! Благодаря! –

0

Я думаю, вы можете установить обе высоты кнопок, равные ширине. Затем в текстовое поле остается другое пространство.

+0

Это получает его отчасти там, где значок фильтра и кнопка go находятся в нужном месте, но текстовое поле очень узкое. Интересно, нужно ли мне установить ширину? –

+0

Удалите «горизонтальный обхват приоритета» текстового поля, тогда он должен работать. Просто любопытно, почему вы устанавливаете это ограничение, поскольку оно против того, что вы хотите. –

0

Дайте соотношение сторон к текстовому полю по его ширине и высоте и дайте центру y для просмотра. Это определенно сработает. Но убедитесь, что когда вы даете пропорции, ваше текстовое поле имеет требуемую ширину.

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