iOS   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了objective-c – UISplitViewController以编程方式不带nib / xib大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我通常创建没有IB东西的项目.我做的第一件事是剥离所有对xibs,outlet更新plist等的引用.没问题,效果很好(在我的世界里)!

现在,我刚刚安装了3.2并试图开发我的第一个iPad应用程序.按照与以前相同的步骤,我创建了一个基于UISplitView的应用程序项目,并剥离了所有IB的东西.此外,我按照Apple的参文档中的部分:Creating a Split View Controller Programmatically,但是,从未显示主视图,只有详细视图(无论方向是什么).我真的试图仔细看看,但我无法理解我错过了什么.

是否有一个UISplitViewController的工作示例,没有在某处漂浮的笔尖?我用谷歌搜索找不到任何东西.或者你知道我可能错过了什么吗?

解决方法

你的委托标题中声明你的splitviewcontroller,在你的didfinishlaunching中使用这样的东西

确保您将uISplitViewControllerDelegate@L_262_9@到detailedViewController头文件,并且您还拥有委托方法.记得导入相关的头文件

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{    

    splitViewController = [[UISplitViewController alloc] init];

    rootViewController *root = [[rootViewController alloc] init];
    detailedViewController *detail = [[detailedViewController alloc] init]; 

    UINavigationController *rootNav = [[UINavigationController alloc] initWithRootViewController:root];

    UINavigationController *detailNav = [[UINavigationController alloc] initWithRootViewController:detail];

    splitViewController.viewControllers = [NSArray arrayWithObjects:rootNav,detailNav,nil];
    splitViewController.delegate = detail;

    [window addSubview:splitViewController.view];

编辑 – 根据斯科特的优秀建议,不要@L_262_9@到windows子视图

[self.window setRootViewController:(UIViewController*)splitViewController];  // that's the ticket
    [window makeKeyAndVisible];
    return YES;
}


//detailedView delegate methods
- (void)splitViewController:(UISplitViewController*)svc 
     willHideViewController:(UIViewController *)aViewController 
          withBarButtonItem:(UIBarButtonItem*)barButtonItem 
       forPopoverController:(UIPopoverController*)pc
{  
    [barButtonItem settitle:@"your title"];



    self.navigationItem.leftBarButtonItem = barButtonItem;
}


- (void)splitViewController:(UISplitViewController*)svc 
     willShowViewController:(UIViewController *)aViewController 
  invalidaTingBarButtonItem:(UIBarButtonItem *)barButtonItem
{
    self.navigationItem.leftBarButtonItem = nil;
}

我也更喜欢IB的代码;-)

大佬总结

以上是大佬教程为你收集整理的objective-c – UISplitViewController以编程方式不带nib / xib全部内容,希望文章能够帮你解决objective-c – UISplitViewController以编程方式不带nib / xib所遇到的程序开发问题。

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

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。