UITableViewCell 上的背景视图在使用切片 xcasset 时拥抱内容
Posted
技术标签:
【中文标题】UITableViewCell 上的背景视图在使用切片 xcasset 时拥抱内容【英文标题】:Background view on UITableViewCell hugs content when using slicing xcassets 【发布时间】:2014-11-06 08:50:10 【问题描述】:我有一些非常简单的 UITableViewCells,只有一行 UILabel 和 UIImageView(白色箭头)。 UILabel 锚定到它的父(内容视图)顶部/底部,箭头现在无关紧要。当我尝试将背景视图设置为从 xcassets 加载可拉伸图像的 UIImageView 时,此图像视图会拥抱由于某种原因自动调整为 sizeToFit 的标签。
我已经对标签和背景视图设置了约束,以将它们锚定到内容视图的顶部/底部,但它们仍然变小。
单元格的高度是 50pt,标签大约是 20pt,因此差异非常明显。
知道我应该怎么做才能让背景视图填充整个内容视图吗?
编辑:
在下图中,您可以看到 2 个单元格,其中一个处于选中状态。底部单元格具有背景视图和选定的背景视图集。背景视图(黑色)没有垂直切片,它只是高度为 50pt 的图像,选定的背景视图(红色)启用了切片,它垂直地拥抱标签。
我想要实现的是为背景和选定的背景视图启用切片,并让它的行为类似于图像上的非切片背景视图,即填充单元格的整个内容视图
编辑 2:
在设置为单元格背景视图的 imageview 上设置的单元格布局和约束的屏幕截图
【问题讨论】:
你能解释清楚你想要什么吗? 我不确定我能不能:) 我会上传一张应该有帮助的图片 如果要填充,请在情节提要中自行设计。 我不确定你的意思。它是在故事板中设计的,有两个 ImageView,都设置了约束以完全填充内容视图,请参阅我的第二次编辑 【参考方案1】:我发现相关问题的答案有帮助,所以这可能是重复的。
UITableView - SelectedBackgroundView not working in ios7 with Auto-Layout
解决方案是以编程方式创建这些背景视图,因为界面生成器中可能还有另一个错误正在搞砸。
【讨论】:
以上是关于UITableViewCell 上的背景视图在使用切片 xcasset 时拥抱内容的主要内容,如果未能解决你的问题,请参考以下文章
UITableViewCell 选择样式更改所有子视图的背景颜色
在 iOS 7 中为 UITableViewCell 使用背景视图涵盖了默认删除按钮
如何以编程方式在 UITableViewCell 中添加自定义视图?
自定义 UITableViewCell 背景,何时重新加载等