在我的应用程序中,我应该有一个通用的UINavigationBar,它的操作包含3个UIBarButton项。因此,我决定在BaseViewController上创建可以作为应用程序ViewControllers的子类的代码,而不是在每个ViewControllers中写入代码。
之后,用它的项来实现这个UINavigationBar显示。在BaseVC中的一个bar按钮项中,将显示UIActionSheet,当从中选择某些内容时,需要从BaseVC到MainVC获得选定的索引。因此,我创建了一个自定义协议方法,将选定的动作表索引从BaseVC传递给我的BaseVC。
MainVC == FirstViewController
这个场景也能发挥作用。但是,如果我在我的UIActionSheet中添加一个或多个FirstVC,它就会被调用并正常工作。但是,它禁用BaseVC的Actionsheet委托调用。这意味着,它不允许在BaseVC上调用委托,
- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex;以上委托未在BaseVC中触发。如何处理来自不同VC的两个UIActionSheet。
对此有什么想法吗?
发布于 2014-10-31 09:06:54
在这种情况下,您必须在FirstViewController方法调用中使用逻辑手动调用它。当您知道调用要由[super actionSheet:actionSheet clickedButtonAtIndex:buttonIndex]处理时,可以通过调用BaseVC来实现这一点。
https://stackoverflow.com/questions/26668897
复制相似问题