我在iPhone中有一个视图,我想在iPad中将其用作详细视图。不幸的是,iPhone中的退出按钮用于关闭我在SplitViewController中使用相同视图作为详细视图的视图。
由于详细信息视图是splitViewController中的子视图,当我点击退出按钮以解除splitView时(显然),它现在给我错误。
对此有何解决方案?
答案 0 :(得分:0)
获取iPhone和iPad的所有不同代码并为共享类创建子类。然后,您可以在子类中执行iPad或iPhone特定操作,同时仍然在超类中具有相同的核心功能。请务必将故事板中的视图控制器更改为新的子类。
所以现在你的SingleViewController在iPhone和iPad中的使用方式不同会变成:
ParentViewController
|
---------------------------------
| |
iPadViewController iPhoneViewController
(detail view controller) (single view controller)
编辑:
如果您想要为每个设备处理不同的事情,或者您只是不想进行子类化,那么您可以为每个设备处理不同的操作,如下所示:
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
// Code for iPad
} else {
// Code for iPhone
}