0

したがって、titleForHeaderInSection と、基本的にグループ化された UITableView がどのように機能するかはわかりませんでした。私はそれを作成しようとすることをあきらめ、今のところ単純なリストを使用することになりました. 以下の点についてご説明いただければ幸いです。

それを理解して...

  1. グループ化された UITableView が必要な場合は、numberOfSectionsInTableView を使用して、必要なグループ (セクション) の数を返す必要があることを理解しています。3 を返します。

  2. 次に、それぞれのセクションに含まれる行数を返す必要がありますよね? numberOfRowsInSection で実行できます。たとえば、最初のセクションでは 2、2 番目のセクションでは 4、3 番目のセクションでは 6 を返しますよね?

  3. これらの各セクションに異なるタイトルを付けたい場合は、titleForHeaderInSection を使用する必要がありますが、使用するのは難しいと思います。ただし、セクション整数を取得し、objectAtIndex を使用してタイトルをセクションの配列に設定するだけでよいようです。

  4. cellForRowAtIndexPath では、セクションやセルの表示方法に関して何かする必要がありますか? ないようですが、よくわかりません...

問題

私のデータは次のように構成されています (各配列エントリに辞書を含む JSON 配列です):

ArrayItemOne
    DictionaryKeyOne:DictionaryValueOne
    DictionaryKeyTwo:DictionaryValueTwo
ArrayItemTwo
    DictionaryKeyOne:DictionaryValueOne
    DictionaryKeyTwo:DictionaryValueTwo
ArrayItemThree
    DictionaryKeyOne:DictionaryValueOne
    DictionaryKeyTwo:DictionaryValueTwo

私のセクションのタイトルは、実際には上記の 3 つの ArrayItemFoo すべての DictionaryValueTwo であり、動的であり、今日または明日にいくつになるかはわかりません。JSON に由来します。次に、それらの一意のセットを作成して数えます。それが私の numberOfSectionsInTableView です。

しかし、DictionaryValueTwo がセクション ヘッダーと一致する場合にのみ、この DictionaryValueTwo でグループ化された行を各セクションで取得するにはどうすればよいでしょうか。現在、各セクションにどの行が含まれるかを制御できません。混乱していて、混乱しています。

これを想像してみてください: すべてのイベントには日付があり、私のセクションは重複しないイベントの日付ですが、私のイベントは日付と一致するセクションにのみ表示される必要があります。それでおしまい。私は愚かすぎて、グループ化された UITableView がどのように機能するかを理解できません...

私のコード

私はすでにプレーンリストを使用してUITableViewをコーディングしています。私の質問を理解するのに役立つ場合は、グループ化されたリスト用にコメントアウトされたものがいくつかあります: CCMasterViewController.m

繰り返しますが、説明を例示するコードは素晴らしいものですが、必須ではありません。グループ化された UITableViews、概念、メカニズムを理解したいと思っています。

はい、私はあちこち検索しましたが、私が直面している同じ問題を抱えている人は見つかりませんでした.

4

2 に答える 2

0

これは役に立ちます。

IPhone の JSON から TableView へ

トリックは、各配列項目を 1 つのセクションとして見ることです。

于 2012-10-17T14:50:51.793 に答える
0

Gustavo Boiko のパッチは、それがどのように機能するかを十分に説明しています。結局、私のデータ構造は間違っていました: https://github.com/caio1982/CorreCuritiba/pull/3

于 2012-10-22T10:19:50.667 に答える