自定义 UITableViewCell 未出现在表格中

Posted

技术标签:

【中文标题】自定义 UITableViewCell 未出现在表格中【英文标题】:Custom UITableViewCell doesn't appear in the table 【发布时间】:2010-10-31 07:08:04 【问题描述】:

我创建了一个 UITableViewCell 并试图在我的一个表中显示它,但由于某种原因它没有出现,表是空的。当我点击表格中的一个单元格时,它会将我带到下一个级别,这意味着自定义 UITableViewCell 没有正确呈现。

这是我的自定义 UITableViewCell .h 文件

@interface ProductViewCell : UITableViewCell 
 IBOutlet UILabel *titleLabel;
 IBOutlet UILabel *detailLabel;
 IBOutlet UIImageView *imageView;


@property (nonatomic, retain) UILabel *titleLabel;
@property (nonatomic, retain) UILabel *detailLabel;
@property (nonatomic, retain) UIImageView *imageView;

这是.m文件

#import "ProductViewCell.h"

@implementation ProductViewCell
@synthesize titleLabel, detailLabel, imageView;

- (void)setSelected:(BOOL)selected animated:(BOOL)animated 
   [super setSelected:selected animated:animated];

@end

这是 UITableViewController 子类的 .h 文件

@interface ProductCategoryViewController : UITableViewController 
 NSArray *tableDataSource;



@property (nonatomic, retain) NSArray *tableDataSource;

这是 ProductCategoryViewController 的 .m 文件

@implementation ProductCategoryViewController
@synthesize tableDataSource;
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:   
            (NSIndexPath *)indexPath 

    static NSString *CellIdentifier = @"Cell";

    ProductViewCell *cell = (ProductViewCell*)[tableView   
                   dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) 
         cell = [[[ProductViewCell alloc] initWithStyle:UITableViewCellStyleDefault  
                  reuseIdentifier:CellIdentifier] autorelease];
    

    NSDictionary *dictionary = [self.tableDataSource objectAtIndex:indexPath.row];

    cell.titleLabel.text = [dictionary objectForKey:@"name"];

    cell.imageView.image = [UIImage imageNamed:[dictionary objectForKey:@"imageUrl"]]; 
    return cell;
    

感谢您的帮助。

谢谢, 尤格什

【问题讨论】:

单元格的 .xib 文件的名称是什么? 【参考方案1】:

我通过进行一些更改来完成这项工作,在我的 tableviewcontroller 中,我为 ProductViewCell 添加了一个 IBOutlet 并合成了相同的内容。

然后我更改了 ProductViewCell 的 xib 文件 1)我将文件的所有者设置为我的 tableViewController 2)然后在这里我将在 tableViewContoller 中创建的 IBOutlet 链接到 ProductViewCell。

我不确定这是否是正确的做法,但至少现在这对我有用

【讨论】:

以上是关于自定义 UITableViewCell 未出现在表格中的主要内容,如果未能解决你的问题,请参考以下文章

自定义 UITableViewCell 中的 UIImageview 未正确显示

自定义 UITableViewCell 未正确加载

自定义 UITableViewCell 未全长显示

自定义 UITableViewCell 未更新

自定义单元格未出现在表格视图中

iOS 帮助:UITableViewCell 类的自定义设计未显示在 UITableView 中