ios – UISplitViewController在故事板中隐藏取消隐藏MasterView

ios – UISplitViewController在故事板中隐藏取消隐藏MasterView,第1张

概述我有一个简单的iPad应用程序,带有带有tableview的MasterviewController和一个包含UIWebView的DetailViewController.然后我在我的Storyboard中拖放了一个SplitViewController,将它与我的Master和Detail控制器连接起来.在MasterViewController中我使用以下内容: - (void) awakeF 我有一个简单的iPad应用程序,带有带有tablevIEw的MastervIEwController和一个包含UIWebVIEw的DetailVIEwController.然后我在我的Storyboard中拖放了一个SplitVIEwController,将它与我的Master和Detail控制器连接起来.在MasterVIEwController中我使用以下内容:
- (voID) awakeFromNib{    self.splitVIEwController.delegate = self;}- (BOol) splitVIEwController:(UISplitVIEwController *)svc shouldHIDeVIEwController:(UIVIEwController *)vc inorIEntation:(UIInterfaceOrIEntation)orIEntation{    return NO;}

目前看起来如下:

一切都很好.我想要做的是使用DetailVIEwController左上角的按钮隐藏取消隐藏MasterVIEwController,就像iPad Mail应用程序一样.

我发现了一些与此问题相关的问题,但他们并没有像我一样只是在Storyboard中拖动它并编写几行代码来创建SplitVIEw,所以不要将其标记为重复或类似的东西.

注意:请不要建议使用MGSplitVIEwController或任何其他第三方库.提前致谢.

MasterVIEwController嵌入在导航控制器中.虽然DetailVIEwController上面有一个手动添加的顶栏,因为当在SplitVIEw中添加全部内容时,它会丢失顶部的导航栏.我所知道的是,我可以在DetailVIEw的顶部栏上创建一个IBAction按钮,但不知道如何触发隐藏和取消隐藏功能.

解决方法 我在主视图控制器(tableController)中这样做:
#import "tableController.h"#import "VIEwController.h"@interface tableController ()@property (strong,nonatomic) NSArray * theData;@property (strong,nonatomic) UIVIEwController * detailVC;@end@implementation tableController -(voID)awakeFromNib {   self.splitVIEwController.delegate = self;   self.detailVC = self.splitVIEwController.vIEwControllers[1];}-(voID)splitVIEwController:(UISplitVIEwController *)svc willShowVIEwController:(UIVIEwController *)aVIEwController invalIDatingbarbuttonItem:(UIbarbuttonItem *)barbuttonItem {    NSMutableArray *itemArray = [self.detailVC.toolbar.items mutablecopy];    [itemArray removeObject:barbuttonItem];    [self.detailVC.toolbar setItems:itemArray];}-(voID)splitVIEwController:(UISplitVIEwController *)svc willHIDeVIEwController:(UIVIEwController *)aVIEwController withbarbuttonItem:(UIbarbuttonItem *)barbuttonItem forPopoverController:(UIPopoverController *)pc {    barbuttonItem.Title = @"Master";    NSMutableArray *itemArray = [self.detailVC.toolbar.items mutablecopy];    if (! itemArray) {        itemArray = [NSMutableArray arrayWithObject:barbuttonItem];    }else{        [itemArray insertObject:barbuttonItem atIndex:0];    }    [self.detailVC.toolbar setItems:itemArray];}

我在IB中添加了一个工具栏到细节控制器,并给它IBOutlet,toolbar.

总结

以上是内存溢出为你收集整理的ios – UISplitViewController在故事板中隐藏/取消隐藏MasterView全部内容,希望文章能够帮你解决ios – UISplitViewController在故事板中隐藏/取消隐藏MasterView所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1099931.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-28
下一篇2022-05-28

发表评论

登录后才能评论

评论列表(0条)

    保存