Как да коригирате няколко реда етикети в Xcode, така че да заемат около 70% от височината на екрана?

Опитвам се да създам приложение, което има само един портретно ориентиран изглед. Има заглавие отгоре и етикет с резултати в долната част на изгледа, те са заключени отгоре, отдолу и в центъра, тук няма проблем.

Сега това е сложната част. Имам 9 реда етикети, повечето един ред, но няколко се простират до 2 реда. Искам те да се разпределят равномерно между заглавието и етикета на резултата.

Заключвам първия етикет в горния ляв ъгъл, заключвам водещите ръбове и след това задавам равни ограничения за вертикално разстояние между етикетите. Иначе добре, но последните етикети на 3,5-инчов дисплей превишават моя етикет за резултати.

Така че коригирам или размера на шрифта, или правя вертикалното разстояние между етикетите по-малко, или и двете. Проблемът с 3,5 инча е коригиран, но сега има голям празен интервал между последния етикет и резултата. На iPhone 6 е наистина грозно.

Опитах всякакви методи, но не мога да накарам това да работи.

Така че основно: как да запазя 10% от височината на изгледа отгоре и 20% отдолу и да кажа на Xcode да използва останалите 70% (и всичките) за моите 9 реда етикет, равномерно?

Благодаря за помощта!

Щях да публикувам изображение, но не и ранг за такива неща...


person Timo Strid    schedule 04.11.2014    source източник


Отговори (1)


Ако ви разбирам правилно, имате нужда от няколко гъвкави пространства, които всички ще бъдат с еднакъв размер. Едно разстояние между всеки от етикетите.

Създайте UIViews, които да поставите между всеки етикет, задайте всички да имат еднаква ширина или височина и закрепете всеки един към изгледите, между които трябва да се намира.

Получих тази идея от друг SO въпрос: Пружини в автоматично оформление: Разпределете изгледите равномерно, с ограничения, в Xcode 5

person Daniel T.    schedule 04.11.2014
comment
Намерих същия съвет, но не успях да го накарам да работи, вероятно защото се опитвах да запълня празните пространства с етикети. UIView работи много по-добре. Благодаря ти! - person Timo Strid; 05.11.2014