0

タイトルが示すように、JSON から UITableView を設定しようとしています。次のようなjsonオブジェクトを取得します

  {
    applications: {
           iphone: {
             application: [
                            {
                              title: "Title",
                             },
                             {
                              title: "Title2",
                             },
                             {
                              title: "Title3",
                             }
                           ]
                      }
                     }
    }

このように、いくつかのtitleフィールドがアプリケーション内にネストされています。

すべてのタイトルをセル ラベルとして使用したいと思います。私はそのようなリストを得ることができます

for (int i = 0; i < 10; i++)
    {
        titleString = [[[[[result objectForKey:@"applications"] objectForKey:@"iphone"] objectForKey:@"application"] objectAtIndex:i] objectForKey:@"title"];
        NSLog(@"title %@", titleString);
    }

return [myArray count]タイトルのリストをログに記録できるように、これは機能します...しかし、これを間違った方法で行っていることはわかっています。メソッド内のmyArrayが何であるかさえわかりませんnumberOfRowsInSection...完全にここで負けた!助けていただければ幸いです!

4

3 に答える 3

1

[[[result objectForKey:@"applications"] objectForKey:@"iphone"] objectForKey:@"application"]配列を返すため、この配列を保存して、次のように必要な場所で使用することをお勧めします。

NSArray *titleArray = [[[result objectForKey:@"applications"] objectForKey:@"iphone"] objectForKey:@"application"];

この配列を保存するには、インスタンス変数を使用して、ファイル全体を使用できるようにします。

于 2012-06-12T14:27:32.230 に答える
0

1 つ目は Application ディクショナリです
。この Application ディクショナリにはキー iPhone のディクショナリが 1 つ
あり、この iphoneDic にはディクショナリの配列があります。

NSMutableDictionary *applicationsDict = [response objectForKey:@"applications"];
NSMutableDictionary *iphoneDict = [applicationsDict objectForKey:@"iphone"];
NSMutableArray *applicationArray = [iphoneDict objectForKey:@"application"];

現在、テーブル ビューのメソッド numberOfRowInSection: で配列カウントを返します

return [applicationArray count]

cellForRowAtIndexPath: メソッドで、この applicationArray
を使用します Array を使用します ...

NSMutableDictionary *titleDict = [applicationArray objectAtIndex:indexPath.row];
cell.titleLabel.text = [titleDict objectForKey:@"title"];

これがお役に立てば幸いです

于 2012-06-12T15:05:20.627 に答える
0

これらのタイトルを配列に保存し、この配列をテーブルのデータソースとして使用できます。myArray は、保存されているタイトルの配列になります。

于 2012-06-12T14:25:42.250 に答える