TableViewCell 上的 UIImageView 缺少单击单元格的约束
Posted
技术标签:
【中文标题】TableViewCell 上的 UIImageView 缺少单击单元格的约束【英文标题】:UIImageView on TableViewCell missing its constraints on clicking cell 【发布时间】:2017-02-02 04:46:05 【问题描述】:要求:
我正在做一个sideBar navigation
,在里面使用UITableView
和UITableViewCell
。在UITableViewCell
里面,有一个UIImageView
和一个UILabel
。我希望UIImageView
具有相同的height 和 width,我已经给了它限制。
问题:
但是在单击每个单元格后,图像视图的大小会发生变化(缺少约束)并与标签重叠。
我只在情节提要中做了所有约束,我在 swift 3 中做 请帮帮我。
代码工作:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! CustomCell
cell.label.text = data[indexPath.row]
let iconName = images[indexPath.row]
//print("\(iconName)")
let image = UIImage(named: iconName)
// print("The loaded image: \(image)")
cell.imageViews.image = image
return cell
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
tableView.deselectRow(at: indexPath, animated: true)
屏幕截图
【问题讨论】:
如果实现了显示你的 didSelectForRow? cell.imageView.maskToBound = true ,试试这个 @Himanshu func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) tableView.deselectRow(at: indexPath, animated: true) 为什么要取消选择didselect
方法上的单元格。显示您的原型单元约束。
即使我避免取消选择,结果也是一样的--@the_dahiya_boy
【参考方案1】:
for viw in cell.contentView.subviews
if ((viw as? UIImageView) != nil)
viw.removeFromSuperview()
else if ((viw as? UILabel) != nil)
viw.removeFromSuperview()
在单元格创建后使用此代码 [从第二行开始]。试试看。
【讨论】:
以上是关于TableViewCell 上的 UIImageView 缺少单击单元格的约束的主要内容,如果未能解决你的问题,请参考以下文章
从 TableViewCell 上的 UITextField 获取文本
实际操作-手把手探究tableViewCell上的控件点击事件
TableViewCell 上的 UIImageView 缺少单击单元格的约束
获取屏幕上的某个控件相对位置,尤其是tableviewcell上的某一个控件的相对位置