use*_*627 2 iphone xcode objective-c ios xcode4
我有一个使用故事板功能的iPad应用程序,然后我有一个单独的.xib文件用于另一个视图.我可以切换到单独的视图及其罚款:
-(IBAction)SecondView:(id)sender{
SecondView *Second = [[SecondView alloc] initWithNibName:nil bundle:nil];
[self presentModalViewController:Second animated:NO];
}
Run Code Online (Sandbox Code Playgroud)
但当我在第二个视图中并尝试返回时,我只使用第一个视图控制器执行所有操作,但它只是进入黑屏:
-(IBAction)FirstView:(id)sender{
FirstView *First = [[FirstView alloc] initWithNibName:nil bundle:nil];
[self presentModalViewController:First animated:NO];
}
Run Code Online (Sandbox Code Playgroud)
你们有什么感想?难道我做错了什么?切换视图的最佳方法是什么?
initWithNibName:bundle 用于加载nib或xib文件.
如果从故事板加载,则需要使用
FirstView *First= [self.storyboard instantiateViewControllerWithIdentifier:@"IDENTIFIER"];
Run Code Online (Sandbox Code Playgroud)
IDENTIFIER 在故事板中定义,它位于右侧的"实用程序","属性"检查器中.
然而, 你真正的问题是你根本不应该从故事板加载.你应该打电话
[self dismissModalViewControllerAnimated:YES];
Run Code Online (Sandbox Code Playgroud)
该调用将清除presentModalViewController:animated:您用于将模态视图控制器放在首位的那个.
| 归档时间: |
|
| 查看次数: |
5195 次 |
| 最近记录: |