2014-12-23 2 views
1

Быстрый вопрос: текст моего заголовка навигации по умолчанию не сосредоточен (если только я не использую 6 Plus), должен ли он основываться на том, на каком типе телефона он отображается? Заголовок отображается в центре раскадровки (с использованием универсального размера раскадровки), однако, если я смотрю на Предварительный просмотр или фактический телефон (4S, 5 и 5S), заголовок полностью сдвигается вправо. Должен ли я пытаться использовать AutoLayout или есть ли параметр в настройках атрибута, который мне не хватает?Навигация Название не сосредоточено?

enter image description here

+1

Как вы устанавливающее название? – Fogmeister

+0

Раскадровка -> Панель навигации -> Пункт навигации (здесь задано название) –

+0

Пожалуйста, поделитесь своим снимком снимок экрана –

ответ

1

Без Автомат, пользовательский интерфейс появится в устройстве/симуляторе точно в том же положении, что и в раскадровке, измеренной в точках.

В раскадровке высота сцены 600 * 600, а заголовок находится горизонтально, поэтому горизонтальная ордината центра заголовка 300, может быть, у буквы «p». Любой iPhone раньше 6/6Plus имеет ширину 320, как вы можете видеть на снимке экрана, правый край заканчивается немного дальше, чем «p».

Автоматический макет может помочь вам, и по моему опыту он платит, чтобы понять его.

Сначала выберите панель навигации, затем в меню выберите «Редактор-> Выровнять->« Горизонтальный центр в контейнере », это все, что вам нужно сделать.

Вы заметите, что предупреждение возникает, это вас не беспокоит. Вы можете игнорировать его, пока не поймете Автомат.

Я настоятельно рекомендую this tutorial

1

Может быть, у вас есть широкий панель кнопок пункт/с, в этом случае название будет выталкиваться от центра. Например, это длинное имя кнопки на iPhone 4s подталкивает заголовок слева. Одно и то же название/название кнопки удобно размещается на 6+ и центрах, как ожидалось.

enter image description here

+0

Вот и все. Хотя у меня есть кнопка на левой стороне (элемент кнопки бара), она недостаточно широка, чтобы подтолкнуть заголовок в крайнее правое положение. Элемент кнопки «Бар» - это изображение (ширина 70 пикселей), и я устанавливаю ширину элемента «Панель кнопок» в «Инспекторе размеров». –

0

Я сталкивался с таким же вопросом и это классы размера рядом с Auto Layout, который вызывает проблему. Если вы отключите его, он окажется центрированным. Я еще не нашел, как исправить это с помощью классов размеров на

5
CGRect frame = CGRectMake(0, 0, 0, 44); 
UILabel *label = [[UILabel alloc]initWithFrame:frame]; 
label.text = @"Title Here"; 
self.navigationItem.titleView = label; 
+5

Хотя этот код может ответить на вопрос, предоставляя дополнительный контекст относительно того, почему и/или как этот код отвечает на вопрос, улучшает его долгосрочную ценность. – JAL

+0

... и может на самом деле получить вам несколько +1 –

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