注意:IOS开发时的N00b。在过去10天左右,我已阅读了几篇教程和代码片段,并收集了足够多的信息以致有危险。我试图完成的是打开用户登录的webview(作为子视图),但由于某种原因,我的导航控制器不显示后退按钮。我尝试了一些不同的东西,但无济于事,显然我做错了什么,所以寻求指导。iOS - XCode 4 - iPhone 6.0 - 将子按钮添加回子视图
我的导航控制器被设置为根控制器,接下来在堆栈上是epViewController。这个视图控制器是应用程序的起点。从这个角度来看,我有两个按钮,一个用于登录,一个用于输入一些数据(对这个问题无关紧要)。
epViewController代码片段:
- (IBAction)buttonToLoginView:(id)sender
{
UIWebView *webView = [[UIWebView alloc] initWithFrame:self.view.bounds];
[webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://example.com/wsapi/user/login"]]];
[self.view addSubview:webView];
}
这个伟大的工程,作为子视图显示导航栏和远程登录页面,但没有后退按钮。根据一些其他的代码片段我尝试以下(同epViewController文件中):
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"Back???" style:UIBarButtonItemStylePlain target:nil action:nil];
self.navigationItem.backBarButtonItem = backButton;
}
但这种自定义按钮只有当我点击按钮,输入一些数据被添加(实际上是采用另一种具体的视图控制器vs子视图)。
我需要做什么才能将后退按钮添加到子视图?是否建议在这里使用子视图,我应该把它链接到另一个具体的视图控制器?
只是想了解你使用的术语 - 你有一个名为'epViewController'的视图控制器作为你的根VC存在于导航控制器中。然后,在该视图控制器的视图中有一个Web视图子视图。但是你并没有将新的视图控制器推到原来的视图控制器上,那么后退按钮的作用究竟是什么? – 2013-05-09 00:01:56
是的,你是对的。后退按钮应关闭子视图并呈现原始视图(2个按钮登录并输入数据)。 – 2013-05-09 00:05:18
你必须推到一个新的控制器来获得后退按钮 - 你只是在你的根视图控制器中添加一个子视图。你最后一个问题的答案是肯定的。 – rdelmar 2013-05-09 00:07:04