非常基本的问题:)
我必须在objective-c中初始化一个数组。我将在表视图中进一步使用该数组值。我有一个章节列表,我把它写成硬编码如下。
NSArray *tableList;
tableList = [[NSArray alloc]initWithObjects:@"Chapter 1",@"Chapter 2",@"Chapter 3",@"Chapter 4",@"Chapter 5",nil];
但是现在我有一个索引数组,它保留了章节细节。下面是保持值的数组代码。
extern NSArray *wallvalue;
for (NSDictionary *chapter in wallvalue) {
NSString *chapterName = [person objectForKey:@"chapters"];
if([chapterName length] >0)
{
NSLog(chapterName);
}
}
现在我想在tablelist中显示这些chapterName。我该怎么做?
提前致谢。
答案 0 :(得分:3)
NSMutableArray *tableList = [[NSMutableArray alloc] initWithCapacity:[wallvalue count]];
for (NSDictionary *chapter in wallvalue) {
NSString *chapterName = [person objectForKey:@"chapters"];
if([chapterName length] >0)
{
[tableList addObject:chapterName];
}
}
答案 1 :(得分:0)
你不应该这样做吗,
cell.textLabel.text = [[wallvalue objectAtIndex:indexPath.row] objectForKey:@"chapters"];
编辑如果您只对那些有名字的章节感兴趣,请过滤掉所有没有正确名称的对象,然后执行上述操作,
NSArray * filteredChapters = [wallvalue filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"chapters LIKE '?*'"]];
[..]
cell.textLabel.text = [[filteredChapters objectAtIndex:indexPath.row] objectForKey:@"chapters"];