我有一个 nslog,它成功地告诉我我将加载到动态单元格中的信息就在那里。但是,我发现我的 tableView 根本没有使用对象“dogs”加载数组“dogs”,因为 name11Label 的 nslog 返回 null,尽管 viewDidLoad 中有 dog 的值。我需要做什么来启动 tableView?(.h 确实为我的“tableView”提供了一个 iboutlet 和一个属性(只是为了确保),并且还有一个用于 cell11.h 的导入)
.m 文件
-(void)viewDidLoad{
...
self.tableview.delegate = self;
...
}
- (NSInteger)tableView:(UITableView *)table numberOfRowsInSection:(NSInteger)section {
if ( dogs != NULL ) {
return [dogs count];
}
return 0;
}
- (UITableViewCell *)tableView:(UITableView *)tv cellForRowAtIndexPath:(NSIndexPath *)indexPath {
Cell11 *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell11"];
if (cell == nil)
{
cell = [[[Cell11 alloc] initWithFrame:CGRectZero reuseIdentifier:@"Cell11"] autorelease]; //I know that this method is depreciated, but it is not the source of this problem
}
NSDictionary *itemAtIndex =(NSDictionary *)[dogs objectAtIndex:indexPath.row];
cell.name11Label.text = [itemAtIndex objectForKey:@"dogs"];
NSLog(@"dogs array = %@", dogs); //returns correct information of the object dogs
NSLog(@"%@", cell.name11Label.text); //returning null even though "dogs" in viewDidLoad is showing a result;
return cell;
}
单元格11.h
#import <UIKit/UIKit.h>
@interface Cell11 : UITableViewCell
@property (nonatomic, strong) IBOutlet UILabel *name11Label;
@end
单元格11.m
#import "Cell11.h"
@implementation Cell11
@synthesize name11Label;
@end