我对 iOS 中的 Storyboards 感到困惑。我想使用它们并让我的代码尽可能现代,但有点困惑。这是我的问题:
在我的应用程序的主视图中,您单击一个按钮,幕后会发生一些耗时的事情(音乐播放,一些文件被连接)。在发生这种情况时,我想要一个带有一些文本字段的菜单向上滑动并让用户输入一些信息,然后他将单击一个按钮来关闭此菜单。
这个菜单可以覆盖全屏,但我不想完全切换到新的 Storyboard,因为背景中有一些东西,我们需要尽快回到主视图。
我尝试过的一件事是为此菜单创建一个新的故事板并使用 instantiateViewControllerWithIdentifier 加载它,它可以工作,但是我以后无法在应用程序崩溃的情况下将其关闭。但也许还有更好的方法?什么是正确的编程风格?
有人问我的代码,我想这是唯一可以放的地方吗?这里是。在主视图中:
AddInfoController *infoSheet = [[AddInfoController alloc] init]; //subclass of viewcontroller
infoSheet = [self.storyboard instantiateViewControllerWithIdentifier:@"AddInfoView"];
[self.view addSubview:infoSheet.view];
然后在我的 AddInfoController 类中,我有:
- (IBAction)clickedDoneButton:(id)sender {
[self removeFromParentViewController];
}
在 AddInfoView 故事板中,我有一个与该 IBAction 挂钩的按钮。当它崩溃时,NSLog 中什么也没有出现,它显示了线程 1 中的一些十六进制内容和 EXC_BAD_ACCESS 错误