
我在IOS8 for iPad中遇到了新的UISplitVIEwcontroller问题.我在detailVIEwcontroller的storyboard中有一个UItableVIEw,在单击单元格时,我应该转到另一个名为“detailinfo”的视图.我目前正在使用“show”segue.
然而,目前的segue只是推动了正确的部分.我想它显示全屏,但我不知道如何制作它,我尝试使用splitVIEwController的preferreddisplayMode属性,结果是它只是隐藏主视图但没有调整detailVIEw的大小.我不想用礼物作为模态.
目前我正在做的方式是
- (voID)prepareForSegue:(UIStoryboardSegue *)segue sender:(ID)sender { if([[segue IDentifIEr]isEqualToString:@"showStudentDetail"]){ if(self.traitCollection.horizontalSizeClass != UIUserInterfaceSizeClassCompact){ UISplitVIEwController *splitVIEwController = (UISplitVIEwController *)self.navigationController.parentVIEwController; splitVIEwController.preferreddisplayMode = UISplitVIEwControllerdisplayModePrimaryHIDden; } }} 并在vIEwDIDAppear中使用
- (voID)vIEwDIDAppear:(BOol)animated { if(self.traitCollection.horizontalSizeClass != UIUserInterfaceSizeClassCompact){ UISplitVIEwController *splitVIEwController = (UISplitVIEwController *)self.navigationController.parentVIEwController; splitVIEwController.preferreddisplayMode = UISplitVIEwControllerdisplayModeautomatic; }} 这将工作,但masterVIEwController将“跳出”具有非常糟糕的视觉效果.
希望可以得到任何帮助,谢谢
在您的情况下,您需要请求拆分视图控制器执行segue.因此,您应该将segue添加到处理活动窗口的拆分视图控制器中.这样您就可以使用全屏选项.
UPDATE
如果你不想使用present作为模态并且想要避免“跳出”效果,你可以使用动画隐藏master
UISplitVIEwController *splitVIEwController = [self splitVIEwController];[UIVIEw animateWithDuration:0.25 animations:^{ splitVIEwController.preferreddisplayMode = UISplitVIEwControllerdisplayModePrimaryHIDden;} completion:^(BOol finished) { [splitVIEwController showDetailVIEwController:vc sender:nil];}]; 总结 以上是内存溢出为你收集整理的objective-c – 如何在IOS8中隐藏UISplitViewcontroller的masterView全部内容,希望文章能够帮你解决objective-c – 如何在IOS8中隐藏UISplitViewcontroller的masterView所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)