在选定的表格行

时间:2016-05-18 02:53:03

标签: ios swift tableview

我有原型单元的tableview,右侧有2个标签和图像 目前,如果我说10行数据,我会看到每行的图像。但我想只看到所选行上的图像而不是所有行。
所以一旦我选择一行,我希望图像出现 有人可以告诉我如何在Swift中完成这个任务吗? 我想也许最初我可以在属性检查器中禁用它,一旦选择了一行,只为该行启用它,而不是不确定如何做到这一点。

enter image description here

3 个答案:

答案 0 :(得分:0)

您可以实现以下代码来实现

@implement CustomCell

- (void)awakeFromNib {
    [super awakeFromNib];
[_imagevw setHidden:YES];
[_imageTopConstraint setActive:NO];
[_imageBottomConstraint setActive:NO];
}

- (void)setHighlighted:(BOOL)highlighted animated:(BOOL)animated{
[_imageTopConstraint setActive:YES];
[_imageBottomConstraint setActive:YES];
}  

@end

如果所有设置都正确,上面的线就可以了。

您的桌面视图rowHeight应为UITableViewAutomaticDimensionestimatedRowHeight为默认值

答案 1 :(得分:0)

您可以使用这一个快速代码来解决您的问题:

override func awakeFromNib() {
   super.awakeFromNib()
   imagevw.hidden = true
   imageTopConstraint.active = false
   imageBottomConstraint.active = false
}

func setHighlighted(highlighted: Bool, animated: Bool) {
   imageTopConstraint.active = true
   imageBottomConstraint.active = true
}

答案 2 :(得分:0)

这是非常好的@ iDev解决方案的快速版本

override func awakeFromNib() {
super.awakeFromNib()
imagevw.hidden = true
imageTopConstraint.active = false
imageBottomConstraint.active = false
}

 func setHighlighted(highlighted: Bool, animated: Bool) {
imageTopConstraint.active = true
imageBottomConstraint.active = true
imagevw.hidden = false

}

为此您需要在自定义单元格中将IBOutlet用于顶部约束,图像视图的底部约束