2015-12-22 4 views
1

Я сделал UIView с встроенным UIView. Я использовал ограничения, чтобы получить достойный UIView, но он пока не работает так, как я хочу, хотя результат в порядке.Как изменить размер UIView для универсального приложения с использованием Autolayout

Я хотел бы получить те же результаты, что и у меня на iPhone 4,7 дюйма в iPhone 5,5 дюйма и 4 дюйма.

Для этого, я думаю, мне нужно изменить размер blue UIViews, но у меня нет подсказки, как сделать их автоматическим изменением размера от storyboard или программным. Я помню давно, я сделал это для Android-приложения, и это было просто, мне просто нужно было дать % bigger or lower.

Есть ли способ сделать это с iOS?

stupids uiviews, resize yourselves please

+0

можно пройти через ограничение и класс классов концепции вы получите четкое понимание – Smile

+0

может быть, это может помочь вам .... http: // stackoverflow.com/questions/31517024/xcode-6-constraints-with-button-images/31518450 # 31518450 –

+0

вы хотите, чтобы uiviews становились все меньше и больше по мере изменения экрана телефона? –

ответ

3

Если эти UIViews. После этого вы можете сделать следующее:

  1. Выберите все взгляды сразу:

enter image description here

Попробуйте это. И дайте мне знать, если возникнет проблема.

Надеюсь, это поможет.

+0

Отличный ответ, он прошел гладко и быстро, это было так, как я искал, я наконец понял, как Равная Ширина/Высота работает сейчас, спасибо –

1

Я считаю, что комментарий Исмаила является правильным, размерные классы являются правильный способ сделать это в раскадровке.

Если вы ищете более программное решение, вы можете реализовать метод sizeForItemAtIndexPath на UICollectionViewDelegateFlowLayout, например, вы можете рассчитать ширину каждого устройства и вернуть правильные пропорции для каждой ячейки, используя упомянутый метод. Простой пример:

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize { 
    return CGSize(width:10, height:10) 
} 

Убедитесь, что на счет вашего расстояния зрения сбора и секции вставки при расчете ширины и высоты.

1

Вы можете сделать это с помощью Autolayout и Классы размеров. Вот ссылки на большие учебники:

Autolayouts

Size Classes

1

Apple, заявил, что просто выбрать все представления на сцене, и нажать «Добавить отсутствующее Constraints» или «Reset с рекомендуемыми ограничениями.» будет решать большинство проблем с автоматической компоновкой. Дайте это выстрел в первую очередь. (Я ищу источник сейчас, отредактирую ответ с ним в ближайшее время).

Затем ознакомьтесь с этим документом Apple по решению проблем автомакета. Это короткая статья, которая поможет вам понять, как отладить то, что вы пытаетесь сделать:

https://developer.apple.com/library/ios/recipes/xcode_help-IB_auto_layout/chapters/ResolvinganItemsLayoutIssues.html

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