【发布时间】:2018-08-28 19:04:26
【问题描述】:
每个视图都有一个进行渲染的层。让我感到困惑的是,您无法将角半径或边框设置为堆栈视图,但是当您隐藏其中一个排列的子视图时,其余子视图会填满堆栈视图。
此外,Apple 文档说堆栈视图仅管理其排列的子视图。
但是,堆栈视图如何调整其子视图的大小?隐藏排列的子视图时,堆栈视图的图层是否会调整大小?如果不是,那么 layer 属性在堆栈视图中的用途是什么?
【问题讨论】:
标签: ios calayer uistackview
每个视图都有一个进行渲染的层。让我感到困惑的是,您无法将角半径或边框设置为堆栈视图,但是当您隐藏其中一个排列的子视图时,其余子视图会填满堆栈视图。
此外,Apple 文档说堆栈视图仅管理其排列的子视图。
但是,堆栈视图如何调整其子视图的大小?隐藏排列的子视图时,堆栈视图的图层是否会调整大小?如果不是,那么 layer 属性在堆栈视图中的用途是什么?
【问题讨论】:
标签: ios calayer uistackview
UIStackView 是 UIView 的 nonrendering 子类;也就是说,它不提供任何自己的用户界面。相反,它只管理其排列视图的位置和大小。因此,某些属性(如 backgroundColor)对堆栈视图没有影响。同样,您不能覆盖 layerClass、draw(:) 或 draw(:in:)。
考虑将堆栈视图放置在另一个 UIView 中,并为该视图提供圆角半径或边框。
Apple Doc
【讨论】: