【发布时间】:2010-05-18 15:39:21
【问题描述】:
如果我没有在标题中充分解释我的问题,我很抱歉。
在我的应用程序中,我使用一个小的子视图在屏幕顶部创建了一个非常基本的计算器(我只有一个 UITextField 来显示操作和两个按钮)。我不想使用自定义键盘,而是想使用标准的 iPhone 数字键盘。
我的问题是在进行操作(例如添加两个数字)并显示结果后,当用户输入新数字时,我无法弄清楚如何清除屏幕。
所以,例如:
- 用户输入“6” -> UITextField 中显示数字 6
- 用户选择“+” -> UITextField 被清除以便为下一个数字腾出空间
- 用户输入“10” -> UITextField 中显示数字 10
用户选择“+” -> 16 显示为上一次操作的结果,并且应该保持在那里直到按下另一个数字(他想继续添加更多数字)
用户输入“5”
此时,如果我使用的是自定义键盘,我可以在用户按下按钮“5”后立即清除 UITextField,但在使用标准数字键盘时我不知道如何执行此操作。所以,我现在得到的结果是“165”。
有没有办法检测标准数字键盘中的按键何时被按下,以便我可以在新数字出现之前清除 UITextField?我认为可能有一个 NSNotification ,但我找不到它。
我知道,如果我创建了一个自定义键盘,或者我使用了两个单独的 UITextField(一个用于操作,另一个用于总计),我可以解决我的问题,但我想使用标准数字键盘,如果有可能。
非常感谢!
【问题讨论】:
标签: iphone objective-c xcode uitextfield