您当前的位置: 首页 >  ui

iOS:UITableViewCell中Label位置无法正确约束的问题

发布时间:2018-12-01 09:40:47 ,浏览量:0

由于UITableView中某一行文字过多,需要扩展Cell的高度,该Cell的样式是.subtitle:

在这里插入图片描述

注意其中的detailTextLabel并没有垂直居中!!!

咋一看解决应该很简单,做一个约束不就行了:

$0.cell.detailTextLabel?.snp.updateConstraints {make in
  	make.centerY.equalToSuperview()
  	make.right.equalToSuperview().offset(-16)
}

遗憾的是,这样做一旦用户按下该Cell,detailTextLabel的位置又会回到上部!

在这里插入图片描述

如上,当首次显示Cell时,其中的detailTextLabel可以在约束下正确定位,但在点击Cell后,detailTextLabel位置又上移回去了。

运行后在Xcode中动态检查detailTextLabel的约束设置,都是正确的。

我猜测是detailTextLabel的父视图contentView对其做了特殊控制,老是想将它限定在指定的位置上。

我的解决方法是取消contentView的自动约束:

关注
打赏
1688896170
查看更多评论

暂无认证

  • 0浏览

    0关注

    108254博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.3456s