当前位置:  开发笔记 > 编程语言 > 正文

如何在UITableViewCell中自定义配件显示图像?

如何解决《如何在UITableViewCell中自定义配件显示图像?》经验,为你挑选了3个好方法。

我想在我的UITableView中使用标准公开配件图像的自定义版本.我怎样才能做到这一点?我希望对这个基本的东西不需要对UITableViewCell进行子类化.



1> codelogic..:

您需要创建自定义视图并将其分配给对象的accessoryView属性UITableViewCell.就像是:

myCell.accessoryView = [[ UIImageView alloc ] 
                       initWithImage:[UIImage imageNamed:@"Something" ]];


如果我这样做,我注意到不再调用UITableViewDelegate方法 - [tableView:accessoryButtonTappedForRowWithIndexPath:].这是预期的行为吗?有没有办法让这种方法有效?

2> STUPID PROGR..:
- (UITableViewCell *)tableView:(UITableView *)tView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{

    UIImage *indicatorImage = [UIImage imageNamed:@"Arrow.png"];
    cell.accessoryView =[[[UIImageView alloc]  initWithImage:indicatorImage] autorelease];


    return cell;
}

好吧,我用上面给出的帮助代码做到这一点



3> nielsbot..:

我遇到了与Greg相同的问题 - 附件视图没有跟踪(如果你使用UIImageView)

我这样解决了:

UIImage * image = [ UIImage imageNamed:@"disclosure-button-grey.png" ] ;
UIControl * c = [ [ UIControl alloc ] initWithFrame:(CGRect){ CGPointZero, image.size } ] ;

c.layer.contents = (id)image.CGImage ;
[ c addTarget:self action:@selector( accessoryTapped: ) forControlEvents:UIControlEventTouchUpInside ] ;
cell.accessoryView = c ;
[ c release ] ;

推荐阅读
U友50081205_653
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有