2

グループ化されたテーブルに複数のセクションを表示する必要がある状況があります。各セクションには 3 つのコンテンツ行があり、1"View More"行が必要です。コンテンツ行は詳細ビューを開き、「さらに表示」はステータス メッセージを含むテーブル ビューを開きます。助けが必要

  1. プロトタイプセルは、画像とラベルを持つように設定されています。そのため、最後に「もっと見る」行を追加する方法がわかりません。

  2. 動的プロトタイプを使用するのは正しいですか (ほとんど機能しています)、それとも静的セルが正しい選択ですか?

ここに画像の説明を入力

4

2 に答える 2

5

プロトタイプセルは、画像とラベルを持つように設定されています。そのため、最後に「もっと見る」行を追加する方法がわかりません。

テーブルごとに 1 つのプロトタイプ セルに制限されません。"View More" セルのカスタム セルを追加し、tableView:cellForRowAtIndexPath:メソッドにコードを追加して、一番上のセルの "main" プロトタイプと最後のセルの "view more" プロトタイプを選択します。

-(UITableViewCell *)tableView: (UITableView *)tableView cellForRowAtIndexPath: (NSIndexPath *)indexPath {
    UITableViewCell *cell;
    if (indexPath.row != [self numberOfRowsInSection:indexPath.section]-1) {
        cell = [tableView dequeueReusableCellWithIdentifier:@"mainPrototype"];
        ...
    } else {
        cell = [tableView dequeueReusableCellWithIdentifier:@"viewMorePrototype"];
        ...
    }
    return cell;
}

動的プロトタイプを使用するのは正しいですか (ほとんど機能しています)、それとも静的セルが正しい選択ですか?

はい、これは正しい選択です。

于 2013-05-23T17:00:05.457 に答える
1

すべてのステータス メッセージを含む配列を作成します。画面の初期化時にセクションごとにグループ化します。グループにもセクションと同じインデックスを付けることができます。didSelectRowAtIndexPath メソッドでは、特定のセクションがクリックされたときに、ステータス メッセージの特定のセクションを次のビュー コントローラーに渡します。

あなたが私の考えを理解してくれることを願っています..

@dasklinkenlightが言ったように、各セクションの最後にカスタムセルを追加できます...

于 2013-05-23T17:01:23.440 に答える