Положение UINavigationItem titleView

Я использую titleView свойство UINavigationItem для установки пользовательского UILabel с моим желаемым размером шрифта / цвет. Вот мой код:

self.headerLabel = [[UILabel alloc] initWithFrame:CGRectMake(0.0, 0.0, 400.0, 44.0)];
self.headerLabel.textAlignment = UITextAlignmentCenter;
self.headerLabel.backgroundColor = [UIColor clearColor];
self.headerLabel.font = [UIFont boldSystemFontOfSize:20.0];
self.headerLabel.textColor = [UIColor colorWithRed:0.259 green:0.280 blue:0.312 alpha:1.0];
self.navigationItem.titleView = self.headerLabel;

В панели навигации у меня также есть левая кнопка панели. Результат - это:

сопроводительный текст http://cl.ly/41164eec656c96e7c913/content

Как Вы видите, текст правильно не центрируется. Я попытался установить x источник маркировки, но это не имеет никакого эффекта.

15
задан indragie 26 June 2010 в 19:29
поделиться

1 ответ

Если вы сделаете headerLabel вложенным видом titleView, вы можете установить фрейм headerLabel, чтобы контролировать, где он находится в titleView.

В том виде, в котором вы делаете это сейчас, у вас нет такого контроля. Я думаю, что ОС выбирает рамку titleView за вас, основываясь на доступном пространстве.

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

15
ответ дан 1 December 2019 в 00:54
поделиться