部分索引标题覆盖 UITableViewCell 视图

Posted

技术标签:

【中文标题】部分索引标题覆盖 UITableViewCell 视图【英文标题】:Section Index Titles Cover UITableViewCell View 【发布时间】:2020-03-23 20:59:19 【问题描述】:

我正在尝试以编程方式将堆栈视图添加到我的 UITableViewCell。

部分索引标题会阻碍视图。

这是我用来在 UITableViewCell 中嵌入堆栈视图的代码。

self.addSubview(mainStack)
mainStack.topAnchor.constraint(equalTo: self.safeAreaLayoutGuide.topAnchor, constant: self.TOP_PADDING).isActive = true
mainStack.bottomAnchor.constraint(equalTo: self.safeAreaLayoutGuide.bottomAnchor, constant: -self.BOTTOM_PADDING).isActive = true
mainStack.leadingAnchor.constraint(equalTo: self.safeAreaLayoutGuide.leadingAnchor, constant: self.SIDE_PADDING).isActive = true
mainStack.trailingAnchor.constraint(equalTo: self.safeAreaLayoutGuide.trailingAnchor, constant: 0).isActive = true

如何在不依赖固定常量(即一些固定填充)的情况下修复视图障碍?

【问题讨论】:

【参考方案1】:

改变

mainStack.trailingAnchor.constraint(equalTo: self.safeAreaLayoutGuide.trailingAnchor, constant: 0).isActive = true

mainStack.trailingAnchor.constraint(equalTo: self.contentView.safeAreaLayoutGuide.trailingAnchor, constant: 0).isActive = true

结果:

【讨论】:

除了约束之外,您应该将单元格的子视图添加到contentView,而不是直接添加到单元格本身。 @dan 谢谢你的评论。直觉上这是有道理的(给定名称“contentView”),但你有这个来源吗?除了这个,我没有遇到任何添加到单元格本身的问题。 @JoshWolff - 查看 Apple 文档的这一页:developer.apple.com/documentation/uikit/uitableviewcell - 图片清楚地展示了为什么应将元素添加到 contentView 而不是单元格本身。 @DonMag 啊,明白了。谢谢!

以上是关于部分索引标题覆盖 UITableViewCell 视图的主要内容,如果未能解决你的问题,请参考以下文章

iOS - UITableViewCell 被 UITabBar 覆盖

UITableViewCell 中 UIImageView 上的 UITapGestureRecognizer

UITableViewCell 渐变图层覆盖删除按钮

UITableViewCell 覆盖向左滑动的删除按钮

UIWebView 在我的 UITableViewCell 子类中覆盖触摸事件

选择后 UITableViewCell 内容移动