ios - 如何限制 Storyboard设计器中 UIView 的大小以及整体运行时 View 的大小?

标签 ios uiview uiviewcontroller xamarin.ios interface-builder

我有一个自定义 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/

相关文章:

ios - 如何通过导航 View Controller 推送数据

ios - 如何在 NSArray 的第一个索引处添加对象

ios - 动画的楼梯animationWithDuration

ios - 当在其上使用捏合手势时,uiview 的边界是否会改变?

ios - UIView 可以自动获取 UIViewController 的引用吗?

ios - Present ViewController 模态显示奇怪的动画

iOS - 无法从其数据源获取单元格

iphone - 使用dismissModalViewControllerAnimated刷新上一个 View

ios - 具有自定义 UIView(包括按钮)的 UIViewController 无法识别水龙头

ios - 将 View Controller 传递给彼此或确保仅初始化它们一次