Поддержание видимости rightbarButton? - PullRequest
0 голосов
/ 12 января 2012

Привет, друзья! Я добавил UIImageView и UIBarButtonItem в Navigationbar в rootViewController.при нажатии BarButten он выдвигает второй viewController.до этого все работает нормально, но когда я выхожу вторичный viewController UIBarButton in rootViewController становится невидимымМожет кто-нибудь сказать мне, как решить эту проблему.

nav = [[UINavigationController alloc] init];
UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, nav.navigationBar.frame.size.width, nav.navigationBar.frame.size.height)];
if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
    UIImage *navImage = [UIImage imageNamed:@"NavBar-iPad.png"];
    imageView.image = navImage;
}
else
{
    UIImage *navImage = [UIImage imageNamed:@"NavBar-iPhone.png"];
    imageView.image = navImage;
}

[nav.navigationBar addSubview:imageView];
[imageView release];

[nav pushViewController:viewController animated:YES];

Ответы [ 2 ]

0 голосов
/ 12 января 2012

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

Если вы хотите, чтобы кнопки выглядели одинаково, вам нужно воссоздать их в новом UIViewController.

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

UINavigationController * navcontrol = [[UINavigationController alloc] initWithRootViewController: viewcontroller];
[navcontrol setNavigationBarHidden: YES];
[self.navigationController pushViewController: navcontrol animated:YES];
[navcontrol release];
[viewcontroller release];
0 голосов
/ 12 января 2012

Я думаю, что вы пытаетесь добавить пользовательский фон в UInavigationBar. Попробуйте эту ссылку, чтобы добавить пользовательское фоновое изображение в iOS 5

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