другой способ добавить заголовок в uinavbar программно? - PullRequest
1 голос
/ 19 июля 2011

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

- (void)viewDidLoad
{
[super viewDidLoad];

//Adding navBar programmatically 
CGFloat width = self.view.frame.size.width;
UINavigationBar *navBar = [[UINavigationBar alloc] initWithFrame:CGRectMake(0,0,width,52)];
navBar.autoresizingMask = UIViewAutoresizingFlexibleWidth;

//Adding title programmatically 
UILabel *lblTitle  = [[UILabel alloc]initWithFrame:CGRectMake(10,10,80,30)];
lblTitle.text = @"Title";
[navBar addSubview: lblTitle];

[self.view addSubview:navBar];

}

И если нет (извините за другой вопрос, просто подумайте, что это связано), как мне настроить свой lblTitle, чтобы он выглядел как обычный заголовок навигационной панеливы найдете в большинстве приложений.

Спасибо!

Ответы [ 4 ]

8 голосов
/ 19 июля 2011

Если вы добавляете панель навигации программными средствами, используйте эту

 (void)viewDidLoad {
    [super viewDidLoad];
    self.title = @"yourTitle";
}

Вы также можете использовать

self.navigationItem.title = @"yourTitle";
4 голосов
/ 19 июля 2011

Вы можете использовать

navigationBar.topItem.title = @"Your Title";
3 голосов
/ 19 июля 2011

Лучший ответ на ваш вопрос - просто использовать UINavigationController, чтобы получить его панель навигации бесплатно, но если по какой-то причине вы не можете этого сделать, вам нужно будет использовать пользовательский UILabel и играть со своими свойствами, пока вы не соответствуете стилю встроенного.

0 голосов
/ 19 июля 2011

Если простая UILabel не удовлетворяет вас, то да, вам нужно множество настроек, или вы можете сделать это в Интерфейсном Разработчике, чтобы улучшить свое представление. Вместо того, чтобы добавить его в качестве подпредставления, я предлагаю вам установить его как navigationItem.titleView в вашем -(void)viewDidLoad.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...