1

UIViewControllerのサブクラスであるFirstViewControllerという名前のクラスがあり、そのクラスにUITableViewがあります。行が押されたときに、このクラスから新しいUIViewControllerサブクラス(セグエを使用)に移行する必要があります。

コードを使用してFirstViewControllerをUITableViewDelegateとUITableViewDataSourceにしました-

@interface FirstViewController : UIViewController <UITableViewDataSource, UITableViewDelegate>

このコード行でエラーが発生します-

NSIndexPath *path = [self.tableView indexPathForSelectedRow];

tableViewはUIViewControllerクラスではなくUITableViewControllerにあるため、この問題を修正するにはどうすればよいですか?

編集 -

これが私のテーブルビューに関連するコードです-

- (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;
}
4

3 に答える 3

5

tableViewをプロパティとして宣言するだけです。

@property(nonatomic, strong) IBOutlet UITableView *tableView;
于 2012-06-29T03:24:52.720 に答える
4

サブクラス化しUITableViewた場合にのみ無料で入手できます。UITableViewController

@interface FirstViewController : UITableViewController
于 2012-06-29T03:28:52.877 に答える
1

以下を使用すると、テーブルビュープロパティを宣言できますFirstViewController

@property(nonatomic, strong) IBOutlet UITableView *tableView;

Table View次に、このプロパティをストーリーボードのに接続する必要があります。

于 2014-02-07T04:33:33.433 に答える