我正在尝试设置子视图控制器框架的宽度和高度,但它不起作用。这是我正在尝试做的:
let frame = UIScreen.main.bounds
let vc = FieldsTableViewController()
addChild(vc)
view.addSubview(vc.view)
vc.didMove(toParent: self)
vc.view.frame = CGRect(x: (frame.maxX+frame.minX)/2, y: 300, width: 200, height: 5)
x 和 y 位置设置正确,但无论我尝试什么,我似乎都无法设置宽度和高度。奇怪的是,我在另一个 vc 中使用相同的子 vc,代码与上面完全相同,并且我在那里设置宽度和高度没有问题。
我也尝试使用自动布局,但无法使其适用于子视图控制器(这可能吗?我没有找到任何例子(。
感谢您的帮助。
我找到了解决方法。 我终于意识到当我设置视图控制器的视图时会出现问题,如下所示:
let v = PlayerSelectionView()
view = v
我不确定为什么这导致了所描述的问题,但是将我的视图添加为子视图反而解决了它:
let v = PlayerSelectionView()
v.frame = view.frame
view.addSubview(v)
现在,我可以编辑子视图控制器的宽度和高度。