UITableView不显示图像

时间:2013-05-29 22:21:26

标签: ios objective-c tableview

看来我的tableview委托根本不会显示我的图像。我添加到视图控制器的UIImageView上的图像显示正常。如果这些信息有帮助,我正在使用界面构建器中的表视图。

  - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
[tableView setDelegate:self];
[tableView setDataSource:self];
static NSString *CellIdentifier = @"Cell";


UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}

cell.accessoryView = [[UIImageView alloc] initWithImage:myimage];

return cell;

}

2 个答案:

答案 0 :(得分:1)

您需要在viewDidLoad方法和.h文件中设置委托和数据源,而不是tableview本身的委托方法。

编辑:

还要确保添加了所有委托方法

那些代表是:

// Return the number of sections
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return 1;
}

// Return the number of rows
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return 5;
}

//filling of tableview
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{

}

//pressing of a row
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{

}

答案 1 :(得分:1)

尝试通过interface builderviewDidLoad方法设置代理和数据来源。

-(void)viewDidLoad{
self.tableView.delegate = self;
self.tableView.dataSource = self;
//...
}

另外,请确保myImage对象不是nil

如果我能记得正确,default样式有一个imageView属性。尝试:

cell.imageView.image = [UIImage imageNamed:@"image.png"];