UIStackView 不调用自定义 UIView 的绘制
Posted
技术标签:
【中文标题】UIStackView 不调用自定义 UIView 的绘制【英文标题】:UIStackView not calling draw of custom UIView 【发布时间】:2019-01-21 11:14:41 【问题描述】:我有一个带有自定义 draw(_ rect: CGRect) 方法的 UIView,该方法有效。
但是,当我将它放在 UIStackView 中时,它的绘制方法不会被调用。同一个stack view内的UILabel或UIImage正常显示。
在 Interface Builder 中,它甚至在堆栈视图中绘制,但在设备上运行时,它不是。
【问题讨论】:
这里同样的问题,不知何故其他地方都没有提到。 我遇到了同样的问题。我有一些使用 PaintCode 中的代码绘制的自定义视图。它们在 UIStackView 之外完美地绘制,但是在 UIStackView 内部时,甚至从未调用 draw() 方法(尽管它们确实出现在情节提要中)。你找到解决办法了吗? 【参考方案1】:draw(_ rect: CGRect)
不调用addArrangedSubview
的stack
。
相反,您可以将代码放入layoutSubviews
。
【讨论】:
以上是关于UIStackView 不调用自定义 UIView 的绘制的主要内容,如果未能解决你的问题,请参考以下文章
添加 UIStackView 作为 UIBarButtonItem 的自定义视图
通过将 UIView 过渡添加到 UIStackView 来制作动画