加载了“PersonnalDetails”笔尖,但没有得到UITableView

时间:2010-04-13 22:35:19

标签: iphone

我正在尝试使用以下代码加载新视图

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

 PersonnelDetails *detailViewController = [[PersonnelDetails alloc] initWithNibName:@"PersonnelDetails" bundle:[NSBundle mainBundle]];

[self.navigationController pushViewController:detailViewController animated:YES]; [detailViewController release];

PersonnelDetails *detailViewController = [[PersonnelDetails alloc] initWithNibName:@"PersonnelDetails" bundle:[NSBundle mainBundle]]; inhertance: - PersonnelDetails继承UITableViewController

但我得到一个例外: } 即使我在PersonnalDetails笔尖中有一个UITableView,我也将PersonnelDetails(viewController)的视图插件连接到UITableView。  什么是可能的原因?

4 个答案:

答案 0 :(得分:14)

我认为问题是因为你是UITableViewController的子类,而不是UIViewController。我之前遇到过同样的问题。

答案 1 :(得分:5)

这可能听起来很奇怪,但在我的情况下,我真的需要一个带有表视图的UITableViewController。我没有使用xib文件,所以我正在使用代码构建所有接口。

我收到同样的错误。

我所做的是像这样覆盖loadView方法,并且它有效!

- (void)loadView {
    [super loadView];
}

现在更奇怪的是,如果我对loadView方法发表评论,我会收到另一个错误:

  

此类与键设置视图

不符合键值编码

,而settingsView属性我没有使用它而且它已被评论。

我现在很困惑!虽然使用loadView覆盖它可以工作。

修改

我已经从我的iPhone中删除了应用程序,然后使用loadView注释再次运行它,现在可以正常运行...

答案 2 :(得分:1)

我不知道问题是什么,但重新启动XCode后,一切正常。

答案 3 :(得分:1)

你的.h文件中出错,

@interface ViewController : UITableViewController<UITableViewDelegate, UITableViewDataSource

@interface SearchViewController : ViewController<UITableViewDelegate, UITableViewDataSource

而不是

@interface SearchViewController : UIViewController<UITableViewDelegate, UITableViewDataSource