我对iOS App Development很陌生。
在我的应用程序中,我试图使用导航栏后退按钮从第二个视图导航到第一个视图,但是在视图中拖放导航栏时,我只能获得带有标题的栏。
我真的很担心,我不确定我做错了什么?我正在使用Xcode 4.3。和故事板来设计视图。
我现在得到什么
寻找
谢谢你们的帮助
我对iOS App Development很陌生。
在我的应用程序中,我试图使用导航栏后退按钮从第二个视图导航到第一个视图,但是在视图中拖放导航栏时,我只能获得带有标题的栏。
我真的很担心,我不确定我做错了什么?我正在使用Xcode 4.3。和故事板来设计视图。
我现在得到什么
寻找
谢谢你们的帮助
Xcode 为您处理这个问题。
突出显示您的第一个控制器。转到菜单栏,然后单击Embed In > Navigation Controller。现在使用UIButton
或其他东西,控制单击并从您的第一个视图控制器的按钮拖动到您的第二个视图控制器并使其成为Push segue。后退按钮不会出现,但如果你运行它,它就会出现。
所以你应该在故事板中有 3 个视图。导航控制器、您的第一个视图控制器和您的第二个视图控制器。
这是使用代码执行此操作的一种方法。
如果你想在导航中获得一个普通的按钮,就像iphone的后退按钮(只有一个视图),你必须添加图像,我认为没有其他办法。当然,如果你有2个或更多的视图控制器,你会使用navigationItem .backBarButtonItem 没有添加图片。但是第一个viewcontroller 没有backButton。
像这样的代码:
navigationBar = [[UINavigationBar alloc] initWithFrame:CGRectMake(0, 0, 320, 44)];
UINavigationItem *navigationItem = [[[UINavigationItem alloc] initWithTitle:@"Detail"] autorelease];
UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 70, 30)];
[button setImage:[UIImage imageNamed:@"plain.png"] forState:UIControlStateNormal];
[button addTarget:self action:@selector(buttonClicked:)
forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *buttonItem = [[UIBarButtonItem alloc]
initWithCustomView:button];
navigationItem.leftBarButtonItem = buttonItem;
[buttonItem release];
[button release];
[navigationBar pushNavigationItem:navigationItem animated:NO];
[self.view addSubview:navigationBar];