UITableViewCell 内的 UIImageViews 不会被选中

Posted

技术标签:

【中文标题】UITableViewCell 内的 UIImageViews 不会被选中【英文标题】:UIImageViews inside UITableViewCell don't become selected 【发布时间】:2013-08-05 15:34:46 【问题描述】:

我正在使用此图像上表示的自定义 UITableViewCells 创建表格:

在单元格的左侧,有一个灰色的 UIImageView、三个标签和一个带有线条的 UIImageView。单元格可以根据其内容具有不同的高度。如果我插入一张图片作为背景,这张图片将被拉伸。所以我创建了两个 UIImageViews:顶部(从单元格的顶部到第一个半圆的底部)和底部(从最后一个半圆的底部到单元格的底部)和带有图案图像背景颜色的 UIView。重复此视图中的图案图像以完全填充 UIView。我还计算了单元格的高度,以便 UIView 正确加入底部 UIImageView。

我的问题是:当单元格被选中时,我的 imageViews 没有被选中。只有中间的 UIView 被选中。您可以在下面的图片中看到这一点:

我希望所有 imageViews(顶部,底部广告灰色)都被单元格选中。我该怎么做?

【问题讨论】:

【参考方案1】:

你必须重写你的 UITableViewCell 子类中的方法。

- (void)setSelected:(BOOL)selected animated:(BOOL)animated 
    self.imageView.image = [UImage imageNamed:@"some_other_image.png"];

【讨论】:

感谢您的回答。我考虑过这一点,但这样我将不得不在我的项目中添加 4 个额外的图像。这将增加我的应用程序的大小。也许还有其他方法?我真的不明白,为什么不是所有单元格的子视图都被选中。 您是否将 imageViews 添加到 contentView 中?它基本上只是改变标准表格视图颜色的表格视图单元格的背景颜色。就应用的最终大小而言,额外的图像应该没什么大不了的。

以上是关于UITableViewCell 内的 UIImageViews 不会被选中的主要内容,如果未能解决你的问题,请参考以下文章

UITableViewCell 内的 UIImageView

UITableViewCell 内的多个堆栈视图内的多行标签

UITableViewCell 内的 UIView 上的 UIGestureRecognizer

UITableViewCell 内的 UIStackView

如何增加 UItableviewcell 内的 UItableview 高度?

捏放大到 UITableViewCell 内的 UIImageView