一个相当理论或抽象的问题......
我有一个视图控制器(让它称之为viewControllerA)带有一个视图(显然)。在显示视图时,如果用户按下特定按钮,则会出现一个弹出菜单(想象一个按钮网格)。用户可以按弹出菜单中的按钮转换到另一个视图(由另一个视图控制器控制)。
我是否应该有一个单独的视图控制器来处理/管理弹出菜单,或者我应该只是"简单地说"将弹出菜单实现为由同一视图控制器(即viewControllerA)控制的视图?
非常感谢支持和反对每种方法的原因。
答案 0 :(得分:1)
我应该有一个单独的视图控制器来处理/管理弹出菜单吗?
我相信,这是更好的选择。您可以在故事板上创建一个容器视图,该视图将具有一个更容易使用的单独控制器,然后是一个具有不同视图的大文件。
您将获得什么:
我应该“简单地”将弹出菜单实现为由同一视图控制器控制的视图吗?
这种方法没有任何优势,因为它在我看来。 在这种情况下,您将:
如果您不使用任何特定的架构模式,也许您应该看看here。
答案 1 :(得分:0)
是的,你可以使用UIViewController作为弹出窗口。
Step1 :在故事板上创建一个新的UIViewController并创建一个与之关联的类。
第2步:你说在点击Popup必须显示的按钮后,然后在第一个ViewController上按一个按钮并写下面的代码
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
PopupViewController *popupVC = [storyboard instantiateViewControllerWithIdentifier:@"popId"];
BIZPopupViewController *popupViewController = [[BIZPopupViewController alloc] initWithContentViewController:popupVC contentSize:CGSizeMake(300, 300)];
[self presentViewController:popupViewController animated:NO completion:nil];
它会在您的视图中将PopupViewController显示为弹出视图。
Here is the link for BIZpopViewController将课程复制到您的项目中,它会起作用。