UIView对象

时间:2018-12-16 08:40:49

标签: ios objective-c debugging

全部

我无法理解此调试器描述的后半部分输出到iOS中的UIView对象的位置。

这是Debug输出:

<myView_inIOS: 0x117f9bbc0; baseClass = UIImageView; frame = (562 39; 30 30); hidden = YES; opaque = NO; layer = <CALayer: 0x282b47ca0>> iview:[myCustomView @ 0x11995b800 id: 427 hidden myView: {0x117f9bbc0 f: {{562, 39}, {30, 30}} layer: 0x282b47ca0} key: 859b rowOffset: 440 componentNeedsLayout hidden]

iview:属性所引用的UIView对象的属性是什么?我尝试查看CALayer和Subview,但是我不知道iview:[]数组的含义以及如何访问它?

2 个答案:

答案 0 :(得分:0)

可能您想检查一下“ description”功能是否被UIView继承的“ iview”类所覆盖,当您尝试使用po调试Objective-C类时,控制台仅打印出“说明”方法返回〜!如果UIView的子类未覆盖“描述”功能,则默认实现将与myView_inIOS一样打印。

答案 1 :(得分:0)

您真的需要访问IView吗?如果您只想摆脱多余的描述字符串,则可以子类myView_inIOS或您正在使用的类的子类,并通过返回您想要的描述和详细信息覆盖该描述。如果您不是实例化该类,则如Stephen Liu所述,您可以与自己的实例交换描述实现。

如果您确实需要访问Iview,我们需要有关您在此处实例化了哪个类的详细信息,以及指向其文档的任何链接。

如果库是静态的,则您可能无法轻松引用/访问Iview。而且它可能也有很好的理由被隐藏。