我有一个自定义 UIView,这是我的小组件,我们将其称为 PlaceholderView。
我的 UITableViewCell 原型(prototype)有一个 Label 和一个 PlaceholderView,位于垂直轴的 UIStackView 内。
PlaceholderView 应该调用一些自定义代码,这些代码会进入缓存以检索特定 View ,然后将其添加到 PlaceholderView 的 subview 中。
我希望这个 subview 占据整个 PlaceholderView 的整个表面。我该如何去做呢?我尝试过,但不确定它是否有效
if (view != null)
{
AddSubview(view);
view.SizeToFit();
}
第二个问题。这些 View 是我添加的,当我在设计时创建它们时,我制作一个新的 Storyboard,拖放 ViewController,然后继续在其上放置其他控件,例如标签和按钮。
如何限制此 ViewController 的整体高度,使其大小完全固定?我知道我可以设置模拟指标,并且我也在设置 View 。框架的大小限制高度。
是否有更好的方法来使这些 View 更容易受到约束?
目前,当我设置这些固定高度值时,如果我将 UITableView.RowHeigh 设置为 AutomaticDimension,它确实会导致一些奇怪的重叠问题。
最佳答案
// attaches all sides of the child to its parent view
extension UIView {
func layoutToSuperview() {
guard let view = self.superview else {return}
self.topAnchor.constraint(equalTo: view.topAnchor).isActive = true
self.rightAnchor.constraint(equalTo: view.rightAnchor).isActive = true
self.bottomAnchor.constraint(equalTo: view.bottomAnchor).isActive = true
self.leftAnchor.constraint(equalTo: view.leftAnchor).isActive = true
}
}
用法:
使用 view.layoutToSuperview()
代替 view.SizeToFit()
关于ios - 如何限制 Storyboard设计器中 UIView 的大小以及整体运行时 View 的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56591324/