我想布局一个UITableViewCell。为此我需要知道我的设备的屏幕宽度。通常在ViewController中我得到Screenwidth:
self.view.frame.width
在我的情况下,这将是375。
在我的UITableViewCell中获取宽度时,我的宽度为320:
class CellResult: UITableViewCell {
...
...
override init(style: UITableViewCellStyle, reuseIdentifier: String!) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
let rowwidth=frame.width; // <--- 320
我最初使用宽度为375的框架初始化了我的UITableView。
如何在UITableViewCell中获得设备的实际宽度?
答案 0 :(得分:0)
如评论中所述,您可以使用UIScreen
获取屏幕大小;但是,我认为访问单元格的实际大小(如果您需要定位自己的自定义视图等)的正确位置是在布局其子视图之后。换句话说,您可以覆盖单元子类中的layoutSubviews()
方法,并根据单元格的框架做任何您需要做的事情,其中框架的大小合适。