重现步骤:
1.创建一个名为“TestApp”的标签栏应用程序
2.添加新文件,一个带有名为“Table”的XIB用户界面的UIViewController子类
3.打开MainWindows.xib,单击第二个选项卡栏项,然后在Inspector中将NIB名称从“SecondView”更改为“Table”。保存并关闭。
4.打开Table.xib并在视图顶部拖动TableView。现在将TableView的dataSource和委托出口链接到Table.xib文件的所有者
5.将以下代码添加到Table.m:
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
NSLog(@"Returning num sections");
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
NSLog(@"Returning num rows");
return 1;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
NSLog(@"Trying to return cell");
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
}
cell.text = @"Hello";
NSLog(@"Returning cell");
return cell;
}
6.运行应用程序并选择第二个标签栏项目。
如果我从基于视图的应用程序开始,向它添加一个TableView,将出口链接到文件的所有者,并添加一段代码就可以了。 我究竟做错了什么 ?为什么应用程序崩溃?
答案 0 :(得分:0)
在Interface Builder中,将NIB名称更新为表后,单击检查器的“标识”选项卡(最后一个选项卡)。然后将类标识更新为“表格”。