在类型的对象上找不到tableView
我有一个名为FirstViewController的类,它是UIViewController的子类,我在类中有一个UITableView。 当按下一行时,我需要从这个类转换到一个新的UIViewController子类(使用segues)。
我使用代码使FirstViewController成为UITableViewDelegate和UITableViewDataSource –
@interface FirstViewController : UIViewController
我在这行代码上收到错误 –
NSIndexPath *path = [self.tableView indexPathForSelectedRow];
我如何解决这个问题,因为tableView可以在UITableViewController中找到,而不是在UIViewController类中找到?
编辑 –
这是与我的表视图相关的代码 –
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{ return [sarray count]; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ static NSString *cellId = @"Cell"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellId]; if(cell == nil){ cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellId]; } NSString *text = [sarray objectAtIndex:[indexPath row]]; cell.textLabel.text = text; return cell; }
您可以简单地将tableView声明为属性:
@property(nonatomic, strong) IBOutlet UITableView *tableView;
只有在UITableView
才能获得免费的UITableViewController
,
@interface FirstViewController : UITableViewController
您可以使用以下命令在FirstViewController
上声明一个表视图属性:
@property(nonatomic, strong) IBOutlet UITableView *tableView;
然后,您需要将此属性连接到故事板中的Table View
。