带有故事板的 UISplitViewController
Posted
技术标签:
【中文标题】带有故事板的 UISplitViewController【英文标题】:UISplitViewController with story board 【发布时间】:2011-10-31 07:03:11 【问题描述】:我正在为 iPad 应用程序使用带有拆分视图控制器的故事板。并将其初始设置为拆分视图控制器。我正在通过数组填充主视图控制器。 'feature' 是我声明方法的 NSObject 类:
- (feature *)initWithName:(NSString *)name iconName:(NSString *)iconName featuresofiphone:(iphoneFeatures)featuresofiphone;并返回 .m 类中定义的 NSString 类型的名称、iconName、featuresofiPhone . 这是我在 didFinishLaunchingWithOptions 的代码:
NSMutableArray *monsters = [NSMutableArray array];
[monsters addObject:[[[feature alloc] initWithName:@"iphone3g"
iconName:@"iphone3g.jpg" featuresofiphone:iphone3gf] autorelease]];
[monsters addObject:[[[feature alloc] initWithName:@"iphone3gs"
iconName:@"iphone3gs.jpg" featuresofiphone:iphone3gsf] autorelease]];
[monsters addObject:[[[feature alloc] initWithName:@"iphone4g" iconName:@"iphone4g.jpg"
featuresofiphone:iphone4gf] autorelease]];
MasterViewController *masterDetailViewController = [[MasterViewController alloc]init];
masterDetailViewController.iphones = iphonesarray;
UISplitViewController *splitViewController = (UISplitViewController *)self.window.rootViewController;
UINavigationController *navigationController = [splitViewController.viewControllers lastObject];
splitViewController.delegate = (id)navigationController.topViewController;
return YES;
但它的例外:
异常 'NSRangeException',原因:'-[UITableView scrollToRowAtIndexPath:atScrollPosition:animated:]: 第 (0) 节的行 (0) 超出边界 (0)。'在主视图控制器中:
-(void)viewDidLoad
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
self.detailViewController = (DetailViewController *)
[[self.splitViewController.viewControllers lastObject] topViewController];
[self.tableView selectRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]
animated:NO scrollPosition:UITableViewScrollPositionMiddle];
并且控制也没有到达 cellForRowAtIndexPath - 方法。帮帮我!!
【问题讨论】:
【参考方案1】:您没有足够的单元格,只需注释该行
[self.tableView selectRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0] animated:NO scrollPosition:UITableViewScrollPositionMiddle];
它试图滚动到一个不存在的单元格。
【讨论】:
以上是关于带有故事板的 UISplitViewController的主要内容,如果未能解决你的问题,请参考以下文章
为啥在我的基于 macOS 文档的应用程序中没有调用带有故事板的 applicationDidFinishLaunching?