0

XCode 4.5.2 を使用して、テンプレートからマスター/詳細 iOS 6.0 プロジェクトを作成しました。生成されたプロジェクトには、既にテーブル セルに開示インジケーター ">" が含まれており、テーブルの行をタップすると詳細ビューが開きます。それで:

  1. マスターテーブルの上に検索バーと検索表示コントローラーを追加しました
  2. 次の問題に従って、MasterViewControllerのメソッドにUITableViewCellクラスの登録を追加しました - (void)viewDidLoad

[self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:@"Cell"];

この registerClass 行を追加した後、プログラムをシミュレーターで実行します。表のセルに開示インジケータが表示されず、表の行をタップしても詳細ビューが開きません。

ここで開示インジケーターを追加するというアドバイスに従いましたが、テーブルの行をタップしても詳細ビューは開きません。

他に何が必要ですか?

4

2 に答える 2

0

dequeueReusableCellWithIdentifier:の代わりに使用してみてくださいdequeueReusableCellWithIdentifier:forIndexPath:
また、tableView:didSelectRowAtIndexPath:が呼び出されているかどうかを確認します。

于 2013-02-17T13:48:17.703 に答える
0

次のものを取り除くことさえできる解決策を見つけました:

     [self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:@"Cell"];

- (void)viewDidLoad

解決策は次のとおりです。

UITableViewCell *cell = [self.tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];

メソッドで

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

diff は: self. Xcode で生成されたテンプレート (マスター/詳細用) に追加する必要があります。

于 2013-02-22T21:13:16.123 に答える