我有一个autolayouted UIView
,需要知道它的宽度。如何在Swift中找到宽度最简单的方法?
答案 0 :(得分:4)
您可以通过
找到任何视图的宽度public function addslashes_recursive($data)
{
if (is_array($data)) {
return array_map('addslashes', $data);
} else {
return addslashes($data);
}
}
如果您已对视图应用了宽度约束,并且您有该约束的出口,那么您可以通过它找到它。
let width = yourView.bounds.width
答案 1 :(得分:0)
获取UIScreen帧数据的正确位置在viewDidLayoutSubviews
,因为在subViews
已在屏幕中布局后调用它也会在每次设备更改方向(例如您的方向)后调用当您的用户进入横向模式时,宽度会有所不同。这是在viewWillAppear
之后调用的:
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
let viewWidth = self.myView.bounds.width
}
答案 2 :(得分:-1)
在内部实施您的视图,您可以使用
override func layoutSubviews() {
super.layoutSubviews()
// you can get width of view in this function
print(self.frame.size.width)
}