Clear UITextField when standard number pad is pressed
Posted
by Manu
on Stack Overflow
See other posts from Stack Overflow
or by Manu
Published on 2010-05-18T15:39:21Z
Indexed on
2010/05/18
16:01 UTC
Read the original article
Hit count: 393
Hi all,
I'm sorry if I didn't explain my problem well enough in the title.
In my application, I'm using a small subview to create a very basic calculator on the top side of the screen (I just have an UITextField to show the operations and two buttons). Instead of using a custom keyboard for it, I want to use the standard iPhone number pad.
My problem is that after doing an operation (e.g. adding two numbers) and showing the result, I cannot figure out how to clear the screen when the user enters a new number.
So, for example:
- User enters "6" -> Number 6 is shown in UITextField
- User selects "+" -> UITextField is cleared to make room for the next number
- User enters "10" -> Number 10 is shown in UITextField
User selects "+" -> 16 is shown as the result of the previous operation, and should stay there until another number is pressed (he wants to continue adding more numbers)
User enters "5"
At this point, if I was using a custom keyboard, I could clear the UITextField as soon as the button "5" is pressed by the user, but I cannot figure out how to do so when using the standard number pad. So, the result I get at the moment is "165".
Is there a way to detect when a key is pressed in the standard number pad so that I can clear the UITextField before the new number appears? I thought there may be a NSNotification for that, but I couldn't find it.
I'm aware that I could solve my problem if I created a custom keyboard or if I used two separated UITextFields (one for the operations and another one for the total), but I would like to use the standard number pad if it's possible.
Thanks very much!
© Stack Overflow or respective owner