2016-03-08 23 views
0

我在我的ViewController中有一个方法被其视图的某个视图所调用,并提供了一些值。然后它向管理员对象发送一条消息,提供关于VC状态的一些信息。在调试时无法检查自己的方法

- (void)elementXChangedWithValue:(float)value { 

    ParameterManager * pMan = [ParameterManager sharedInstance]; 
    [pMan updateParameter:self.elementX.parameter value:value]; 

} 

在调试,对我进行检查是非常重要的.SomeElement.parameter状态是这样我就可以知道什么是越来越在翻译的时候,我得到我的ParameterManager失去了什么。

不幸的是,尽管Self绝对是非零和可访问的,但调试器显示关于该类的少量信息,使得快速和实用的价值难以估价。 (但我有时会在调试器命令行中调用“po”命令)。

不确定它是否有帮助,但是该项目运行的Objective-C/Swift的互操作性很大,尽管ViewController是一个完全的Objective-C类。

这是我在调试器中得到的图像。下拉箭头只显示空白。 debugger

+0

不能你 “宝self.elementX.parameter” 或的NSLog()或者print()得到它? – Hima

回答

1

调试器不是完美的,有时你只是不能看到某些领域,如自己是什么。 NSLog的代码尽管总是有效,但如果所有其他代码都失败了,请将其中的一个添加到正确的位置以打印出您想了解的对象。

0

调试器可以显示更多的信息,你做后,执行这些命令:

expr @import UIKit; 
expr @import Foundation; 

这会将整个的UIKit和基金会的符号在运行时的调试器,你只需要为每个调试会话一次执行它。

您可以使用用户定义的断点自动执行此操作,每当应用程序在调试器中启动时都会触发该断点。

来源:http://furbo.org/2015/05/11/an-import-ant-change-in-xcode/

+0

谢谢,我不知道这件事。然而,在我的情况下,我想知道为什么自我缺失。在我调试过的所有其他方法(百万)中,当我放下箭头时,总是至少有一些自我符号。为什么这个人没有任何东西。它绝对有属性。 –