过去几天我一直在搜索这个问题。
在我的档案中.h我把它放在界面中:
NSMutableArray *newsCount;
@property (nonatomic, retain) NSMutableArray *newsCount;
在我的文件中。我发誓这段代码。
我已经在视图中显示了Will Appear方法:
- (void)viewWillAppear:(BOOL)animated{
self.newsCount = [[NSMutableArray alloc] init];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [self.newsCount count];
// return 5;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
// Configure the cell.
cell.textLabel.text = [NSString stringWithFormat:@"- %@",[[newsCount objectAtIndex: indexPath.row] objectForKey:@"RELATED_CAPTION"]];
[cell.textLabel setFont:[UIFont fontWithName:@"Helvetica" size:13]];
cell.textLabel.lineBreakMode = UILineBreakModeWordWrap;
cell.textLabel.numberOfLines = 2;
cell.textLabel.textColor = [UIColor grayColor];
return cell;
}
答案 0 :(得分:2)
您如何设置self.newsCount
?
要么你没有将数组放入self.newsCount
,要么(更有可能)你设置“newsCount
”而没有retaining
。
您使用的是ARC
吗?如果没有,你应该是。
答案 1 :(得分:1)
如果您正在设置newsCount,就像您在@Kendall的回答评论中提到的那样:
newsCount = [[[GlobalVariable sharedInstance].itemNewsDetail objectAtIndex:i]objectForKey:@"RELATED"];
那么问题可能是因为该对象不是NSMutableArray,而是NSString(__ NSCFString是NSString使用的私有类)
您可能希望通过在我之前提到的行之后添加此行来转储[GlobalVariable sharedInstance].itemNewsDetail
的内容:
NSLog(@"itemNewsDetail: %@",[[GlobalVariable sharedInstance].itemNewsDetail objectAtIndex:i]);
并检查密钥@"RELATED"
...