gpt4 book ai didi

objective-c - TableView 不允许字典中出现 'section'

转载 作者:行者123 更新时间:2023-11-29 04:21:18 24 4
gpt4 key购买 nike

我想循环遍历 json 项目列表以在我的分段 tableView 中使用。为此,我想重组数据以进行部分->数组设置,其中数组包含 session 数组。

首先,我不知道这是否是首选方法,可能有更简单的方法。我不断收到错误消息,不允许我在字典中使用“节”作为标识符。此外,当我使用“部分”以外的其他内容时,字典会不断被覆盖。

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {

NSString *day = _json[@"days"][3];
NSString *key;
NSUInteger count = 0;
NSMutableArray *sessionList = [[NSMutableArray alloc] init];

NSArray *timeslotsSorted = [[_json[@"schedule"][day] allKeys]
sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)];


NSArray *locationsSorted = [[_json[@"schedule"][day][timeslotsSorted[section]] allKeys]
sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)];

for (key in locationsSorted) {
NSDictionary *temp = _json[@"schedule"][day][timeslotsSorted[section]][key];
if ([temp isKindOfClass:[NSDictionary class]]) {
[sessionList addObject:temp[@"title"]]; //test array
count++;
}

}

_sessionDict = @{
section: sessionList
};

return count;
}

最佳答案

您在错误的位置构建数据结构的所有工作。假设您的数据中有 10 个部分。这将调用 tableView: numberOfRowsInSection 方法 10 次,这使得这里成为执行大量工作的效率非常低的地方。您还必须实现返回要显示的部分数量的方法以及显示每个单独行的方法。

我将在 viewWillLoad 方法中构建数据结构,然后将其存储在本地并在所有 tableView 方法中重用它。

关于objective-c - TableView 不允许字典中出现 'section',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12957392/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com