如何在UITableViewCell中获取屏幕宽度?

时间:2015-05-11 15:27:44

标签: ios uitableview swift

我想布局一个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中获得设备的实际宽度?

1 个答案:

答案 0 :(得分:0)

如评论中所述,您可以使用UIScreen获取屏幕大小;但是,我认为访问单元格的实际大小(如果您需要定位自己的自定义视图等)的正确位置是在布局其子视图之后。换句话说,您可以覆盖单元子类中的layoutSubviews()方法,并根据单元格的框架做任何您需要做的事情,其中​​框架的大小合适。