使用UIAppearance代理自定义UITableViewCell

时间:2013-07-03 10:54:00

标签: ios uitableview uiappearance uiaccessoryview

我想在我的应用中为所有UITableViewCell配件视图设置自定义图像。我尝试过使用这段代码:

[[UITableViewCell appearance] setAccessoryView:[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"table-arrow.png"]]];

但它不起作用。

有什么想法吗?

2 个答案:

答案 0 :(得分:3)

尝试在UITableViewCell类别中创建自定义外观选择器。这是一个示例实现:

·H:

- (void)setAccessoryViewImage:(UIImage *)image UI_APPEARANCE_SELECTOR;

的.m:

- (void)setAccessoryViewImage:(UIImage *)image {
    self.accessoryView = [[UIImageView alloc] initWithImage:image];
}

而且您可以使用代理对象配置所有单元格:

[[UITableViewCell appearance] setAccessoryViewImage:[UIImage imageNamed:@"table-arrow.png"]];

答案 1 :(得分:1)

//试试这个

   cell.accessoryType = UITableViewCellAccessoryNone;
   UIImageView *imgArrow = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 10, 15)] ;
   imgArrow.image = [UIImage imageNamed:@"table-arrow.png"];
   cell.accessoryView = imgArrow;
   [imgArrow release];
   imgArrow = nil;