Ret*_*n-1 2 uiview ios autolayout nslayoutconstraint
我有一个自定义的UIView,我在我的ViewController上加载.
func loadBottomSheet(){
bottomSheet = Bundle.main.loadNibNamed("BottomSheetTest", owner: self, options: nil)![0] as! BottomSheetTest
bottomSheet?.setUp(parentController: self)
bottomSheet?.tag = 9009164
self.view.addSubview(bottomSheet!)
}
Run Code Online (Sandbox Code Playgroud)
自定义视图的代码如下:
func setUp(parentController: UIViewController){
self.parentController = parentController;
self.translatesAutoresizingMaskIntoConstraints = false
self.leftAnchor.constraint(equalTo: parentController.view.leftAnchor).isActive = true
self.rightAnchor.constraint(equalTo: parentController.view.rightAnchor).isActive = true
self.heightAnchor.constraint(equalToConstant: CGFloat(400)).isActive = true
self.bottomAnchor.constraint(equalTo: parentController.view.bottomAnchor).isActive = true
}
Run Code Online (Sandbox Code Playgroud)
我试图将它添加到我的视图控制器.以下代码使用一般错误使应用程序崩溃:libc ++ abi.dylib:以NSException类型的未捕获异常终止.
此时我已从自定义视图中删除了所有内容.你在这里看到的就是它的全部内容,没有更多的UI元素,没有IBOutlets,就是这样.我在机智的尽头.
您正在为视图层次结构中不存在的视图添加约束,因此您首先需要将所需视图添加为子视图,然后您可以设置约束而不会在过程中发生崩溃
你需要移动这一行
self.view.addSubview(bottomSheet!)
Run Code Online (Sandbox Code Playgroud)
在这之上
bottomSheet?.setUp(parentController: self)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
927 次 |
| 最近记录: |