如何在iOS调试器中访问此变量?

时间:2016-03-13 10:40:29

标签: ios swift debugging

我在这个循环中有一个调试器:

    for view: UIView in containerView.subviews {
        // debugger stops here!
        var rect = CGRectMake(0,contentRect.size.height, self.view.frame.width, view.frame.height)
        contentRect = CGRectUnion(contentRect, rect)
    }

如果我跑:

(lldb) po view
<UILabel: 0x7ff45176f800; frame = (0 0; 11516.5 20.5); text = 'Many translations suggest...'; userInteractionEnabled = NO; layer = <_UILabelLayer: 0x7ff45176fa10>>

我自然地假设我可以通过以下方式访问text属性:

po view.text

但是回归:

error: <EXPR>:1:1: error: value of type 'UIView' has no member 'text'

如何访问此属性?

1 个答案:

答案 0 :(得分:6)

与在代码中访问它的方式相同,您必须强制转换它,否则调试器仍会将view视为UIView实例:

// Swift
po (view as! UILabel).text

// Obj-C
po [(UILabel *) view text]