8

可以说我想做一个

p uiTextFieldObj.frame

它会说错误:属性

'frame' not found on object of type 'UITextField *'

有什么技巧可以让我展示出来吗?

4

3 回答 3

26

你可以这样做:

p (CGRect)[uiTextFieldObj frame]

从 Xcode 4.5.2 开始,使用点语法在 lldb 中打印属性似乎仅适用于您的应用程序中定义的对象的属性,而不适用于框架类定义的属性。

于 2012-12-11T22:03:10.193 回答
6

您可以通过 [] 表示法而不是 . 符号:

你试过这个吗?

print (CGRect)[textfieldObj frame]

如果没有 (CGRect) 强制转换,它很可能会显示一个错误,指出它不知道返回类型。你也可以这样做:

po textfieldObj

这将向您显示框架和有关文本字段的其他一些信息。po debug 命令将调用 objects -description 方法,您可以覆盖该方法以提供您喜欢的任何信息。

于 2012-12-11T22:02:52.073 回答
3

查看Xcode 中的 @import-ant 更改

LLDB 的 Objective-C 解析器现在可以遍历应用程序中使用的任何模块,并确定用于它定义的所有函数和方法的类型

e @import UIKit;
po uiTextFieldObj.frame
于 2015-08-30T03:04:52.623 回答