我的 RootViewController 有两个问题,它是这样定义的:
@interface RootViewController : UIViewController
注意:我已经在我的 RootViewController.m 中从 UITableViewDelegate 声明了以下方法,但它们被注释了。首先它是 UITableViewController,但后来我将其更改为 UIViewController。
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView;
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;
我如何唤醒我的应用程序:
- (void)applicationDidFinishLaunching:(UIApplication *)application {
RootViewController *rootVC = [[RootViewController alloc] init];
navigationController = [[UINavigationController alloc] initWithRootViewController:rootVC];
navigationController.navigationBarHidden = YES;
[rootVC release];
[window addSubview:[navigationController view]];
[window makeKeyAndVisible];
}
注释结束;
当我尝试构建应用程序时,他崩溃并出现以下错误
2012-06-13 10:34:23.595 Astrobox[540:707] -[RootViewController tableView:numberOfRowsInSection:]: unrecognized selector sent to instance 0x151820
2012-06-13 10:34:23.609 Astrobox[540:707] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[RootViewController tableView:numberOfRowsInSection:]: unrecognized selector sent to instance 0x151820'
如果我取消注释 UITableViewDelegate 中的方法,它在设备上运行,iOS 5.1.1 (92206),但我
RootViewController
看起来像UITableViewController
- 屏幕上从上到下的分隔符,因为它的性质 tableView 反弹是启用的,我可以在这里轻松解决我的问题使用以下代码,但我不接受这是优雅的解决方案。self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone; self.tableView.bounces = NO;