簡體   English   中英

使用tableView numberOfRowsInSection時遇到問題

[英]Trouble using tableView numberOfRowsInSection

我有一個json,我在一個單獨的類中進行解析,並使用以下命令循環遍歷:

            for( NSDictionary * game in games )
            {
                Game * teamGame = [[Game alloc] initWithJson:game];
                [teamGames addObject:teamGame];
            }

teamGames具有以下值:

{
    awayteam = "Olympics 2014";
    gametime = "2014-05-08 19:00:00";
    hometeam = Finland;
},
{
    awayteam = Latvia;
    gametime = "2014-05-11 19:00:00";
    hometeam = "Olympics 2014";
},
{
    awayteam = "Canada 2013";
    gametime = "2014-07-19 19:00:00";
    hometeam = USA;
},
{
    awayteam = "USA 2014";
    gametime = "2014-01-11 15:00:00";
    hometeam = Sweden;
},
{
    awayteam = "Test 2014";
    gametime = "2013-05-16 10:00:00";
    hometeam = Sweden;
},
{
    awayteam = "Olympics 2014";
    gametime = "2014-12-16 19:00:00";
    hometeam = Sweden;
},
{
    awayteam = "Test 2014";
    gametime = "2014-01-11 15:00:00";
    hometeam = Sweden;
},

我想用非重復日期填充表格標題,並使用相應的團隊名稱填充單元格的名稱。 相同的日期需要放在相同的部分中。 我可以使用return 1;來填寫表格return 1; numberOfRowsInSection但是如果有更多游戲,則不會顯示。

我該如何實現?

關於該日期的日期和游戲數組的字典?

謝謝!

在numberOfRowsInSection中,只需返回數組的項目數(計數)。

此方法返回的值是將出現在tableview部分中的行數(如方法標題中所述)。

重新閱讀您的問題,我認為這是您的解決方案:

1.)為每個日期創建一個NSMutableArray,其中包含該日期的游戲。

2)創建每個數組時,將其添加到NSMutableDictionary中,並將鍵設置為該數組的Date。 [dictionaryVar setObject:yourArrayOfGames forKey:@“ TheDateYouWantToUseForThatArray”];

3)在您的numberOfRowsInSection方法中,使用Integer section (該方法已經具有)來獲取正確的數組。 由於您無法使用索引整數訪問字典中的屬性,因此需要將dict中的鍵轉換為數組,然后使用整數部分來獲取正確的鍵,然后最終在數組上使用它。 應該看起來像:

NSMutableArray *arrayOfDictKeys = [[NSMutableArray alloc] init];

arrayOfDictKeys = [dictionaryVar allKeys]; //(這將獲取字典中所有鍵的列表) NSString *key = [arrayOfDictKeys objectAtIndex:section]; //(這是您使用var section

NSMutableArray *arrayForKey = [[NSMutableArray alloc] init];
arrayForKey = [dictionaryVar objectForKey:key];
return arrayForKey.count;

為此,您需要確保以正確的順序將“ Key \\ Array”對插入字典中,否則使用“ section抓關鍵”可能會抓到您意外的日期。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM