私はtimeSlotArr
に与えられた形式のデータを含んでいます。複数の行とセクションを持つUITableview
timeSlotArr ++++++++ (
{
availablenow = 0;
callbackSlotId = "96a8a387-a2a1-e611-8101-000c29821561";
callbackSlotName = "07:00 AM";
date = "2016-12-21";
dateInUtc = "2016-12-21T01:30:00Z";
day = Wednesday;
},
{
availablenow = 0;
callbackSlotId = "9aa8a387-a2a1-e611-8101-000c29821561";
callbackSlotName = "09:00 AM";
date = "2016-12-21";
dateInUtc = "2016-12-21T03:30:00Z";
day = Wednesday;
},
{
availablenow = 0;
callbackSlotId = "9ca8a387-a2a1-e611-8101-000c29821561";
callbackSlotName = "10:00 AM";
date = "2016-12-21";
dateInUtc = "2016-12-21T04:30:00Z";
day = Wednesday;
}
)
データをUITableView
に複数のセクションと複数の行を表示したいとします。セクションの
何が「日」キー(sections
が配列である)に基づいて決定されていないと、あなたのテーブルビューに上記のセクションと行構造を実現することができ、私の経験を1としてelementsInSection
はセクション
for (NSDictionary *dict in timeSlotArr) {
NSString *day = [dict objectForKey:@"day"];
if (![sections containsObject:day]) {
[sections addObject:day];
NSMutableArray *arr = [[NSMutableArray alloc] init];
[arr addObject:dict];
[elementsInSection addObject:arr];
} else {
NSMutableArray *arr = [elementsInSection objectAtIndex:[sections indexOfObject:day]];
[arr addObject:dict];
[elementsInSection setObject:arr atIndexedSubscript:[sections indexOfObject:day]];
}
}
NSLog(@"elementsInSection ++++++++ %@",elementsInSection);
elementsInSection Returns 1 instead of 3 here is wrong... 3 means data of `timeSlotArr` with key `day`
NSLog(@"sections ++++++++ %@",sections); //Returns 1 which is right
この行を削除して試してみてください:[elementsInSection setObject:arr atIndexedSubscript:[sections indexOfObject:day]]; –
がどのように私はあなたがすでにその配列のリファレンスを使用しているelementsInSection' –
'に要素を追加するNSMutableArrayの* ARR = [elementsInSection objectAtIndex:[セクションindexOfObject:1日]];要素を追加する。 –