我正在调试一些代码,发现很难看到&跟踪iPhone键盘输入的值到UITextField(以及UIDatePicker)。
我希望Arguments> self> textField> _text能够反映输入到textField中的值,但事实并非如此。它显示了一个不同的值(例如0.00美元而不是1.25美元)。当我通过NSLog(@“textField.text:%@”,textField.text)写出值时;它显示正确的$ 1.25值。是什么给了什么?
我想知道这是否与UITextField仍然是第一响应者的事实有关,我正在调试的这个代码是在“保存”按钮中,在所述UITextField中输入数据后立即按下该按钮?!?如果是这样,问题仍然存在,数据存储在何处以及如何调试?我在类似情况下使用的UIDatePicker也有类似的问题来修改UITextField的值。
谢谢!
答案 0 :(得分:4)
你要问的是基本上;
如何在调试器中查看私有类数据并使其反映出我的期望?
答案基本上是你不能的。 _text字段可以在以后更新,或者根本不使用。
如果你想要一种方法来调试在UITextField中输入的内容,你可以考虑使用textField:委托中的shouldChangeCharactersInRange打印输出字符,然后输入它们。
答案 1 :(得分:0)
调试器不理解点表示法(textField.text)。但请记住,属性只是方法调用的简写 - 所以调用[textfield text]完全相同。因此,如果要在调试器中查看文本字段值,只需键入:
po [textField text]