【问题标题】:How to set cornerRadius of a cell's contentView after setting layoutMargins for it为单元格设置 layoutMargins 后如何设置单元格 contentView 的cornerRadius
【发布时间】:2016-01-18 20:59:04
【问题描述】:

将 layoutMargins 设置为单元格的 contentView 后,我无法设置自定义 UITableViewCell 的圆角半径:

self.contentView.layoutMargins = UIEdgeInsets(margin, margin, margin, margin)
self.contentView.layer.cornerRadius = 4.0 // Will not show, because of the layoutMargins.

对此的任何解决方案将不胜感激。

编辑

当前有一个表格视图,其中 layoutMargins 设置为所有单元格:

我想为所有单元格实现一个带有 layoutMargins 和cornerRadiuses 的表格视图:

【问题讨论】:

  • 一些关于你目前拥有的和你想要实现的截图会有所帮助
  • 你在哪里添加这些代码行?
  • - 用截图编辑。 - 这些代码行在 UITableViewCell 的子类中。
  • 您是否尝试在您的UITableViewCellcontentView 上将clipsToBounds 属性设置为YES
  • @AleksanderGrzyb 是的,我做到了,但仍然无法正常工作。

标签: ios swift uitableview layout cornerradius


【解决方案1】:

即使这是可能的,我建议你不要这样做。尽量避免将这些值设置为内部视图,因为它们可能会受到拥有视图的系统(单元格本身)的影响。

您应该做的是创建另一个视图并将其放在内容视图中(最好在情节提要中完成)。然后操纵该视图。您必须将内容视图背景设置为清除颜色,并且如 cmets 中所述,不要忘记在新视图上设置剪辑子视图。

您还可以通过添加“用户定义的运行时属性”作为关键路径:layer.cornerRadius;类型:数字;值:4。

其中任何一个都可以以编程方式工作。

【讨论】:

    【解决方案2】:

    您好,如果您正在寻找内容视图的角半径,我有面糊解决方案。 您可以将内容视图用作下一个孩子,并为框架提供角落。 前任-

                    </StackLayout>
                        </Frame>
                    </StackLayout>
                </ContentView>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-16
      • 1970-01-01
      • 2011-10-22
      • 1970-01-01
      • 2023-04-06
      • 1970-01-01
      • 1970-01-01
      • 2019-10-19
      相关资源
      最近更新 更多