私はここで簡単な質問で少し立ち往生しています:
私はコアデータと共にローカルに保存されたオブジェクト(休息を介して来る)を持っています。coredata エンティティ内には、次の属性があります。
- 猫 ID (int16)
- 親 ID (int16)
- タイトル (文字列)
これは、ユーザーが後でアプリの pickerView から選択できるカテゴリの単純なリストを作成するためです。フィールド catID は、各カテゴリを識別する一意の ID です。parentID は、マスター カテゴリの catID を保持します。parentID = 0 の場合、カテゴリはマスター カテゴリ (ルート レベル) です。
ユーザーが選択できるように、ピッカービューにカテゴリのリストをロードする必要があります。PickerView 内のリストは次のように表示されます。
MainCategory 1
MainCategory 2
SubCategory 2.1
SubCategory 2.2
MainCategory 3
MainCategory 4
SubCategory 4.1
すべてのカテゴリを NSArray などのオブジェクトとしてロードし、カテゴリを正しい方法で並べ替えるにはどうすればよいですか? レベル 2 (ここで、parentID != 0) のカテゴリは、pickerView で正しく表示されるように、NSArray のマスター カテゴリの直後に表示される必要があります。技術的には、カテゴリとサブカテゴリは同じタイプのオブジェクトです。parentID
オブジェクトがカテゴリかサブカテゴリかを示すのは、属性だけです。