1

enter image description hereiOS - Каков правильный способ просто отобразить кнопку «Назад» и «Навигация»?

Над конструкцией может быть достичь с помощью setNavigationBarHidden = ДА, и путем добавления UIButton в верхней части для поведения BackButton. Но я хочу избежать этого хака/метода.

Возможно ли, что я все еще могу использовать leftBarButtonItems для backButton без navigationBar?

Каков рекомендуемый и правильный подход для такого дизайна?

ответ

0

leftBarButtonItems - это аксессуар, который используется только с навигационной панелью, если вы хотите использовать его, вы будете использовать его только с навигационной панелью.

Теперь, если вы не хотите добавлять пользовательскую кнопку, просто создайте прозрачный код UINavigationBar, используя приведенный ниже код.

[self.navigationBar setBackgroundImage:[UIImage new] 
         forBarMetrics:UIBarMetricsDefault]; 
self.navigationBar.shadowImage = [UIImage new]; 
self.navigationBar.translucent = YES; 
0

Вы можете сделать это, даже не скрывая панель навигации, как

UIButton *backBtn = [[UIButton alloc] initWithFrame:CGRectMake(10, 5, 60, 20)]; 
[backBtn setImage:[UIImage imageNamed:@"navigationBar_back_image"] forState:UIControlStateNormal]; // use your image or setText of backBtn "<" 
[backBtn addTarget:self action:@selector(pushBackBtnTpd:) forControlEvents:UIControlEventTouchUpInside]; 

UIBarButtonItem *backBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:backBtn] ; 
self.navigationItem.leftBarButtonItem = backBarButtonItem; 

    -(IBAction)pushBackBtnTpd:(id)sender 
{ 
    [self.navigationController popViewControllerAnimated:YES]; 
} 
1

leftBarButtonItems является собственностью UINavigation элемента, так что вы не можете использовать его без Панель навигации. Поэтому, вероятно, если вы не хотите использовать навигационную панель, добавление пользовательской кнопки - это путь.

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