views:

241

answers:

1

I have an app with a login page that has three fields for three different random characters. When the user leaves the last field, the soft keyboard disappears and the user can touch a "login" button on screen.

When there is a hardware keyboard (bluetooth or physical) attached, I'd like to be able to hit "enter" on it. However because the user is not in a field, I can't see how to detect this key being pressed.

Would anyone have advice on which class handles key press events? Presumably there is a delegate that I can use to receive these but my searches through the SDK haven't found anything.

Thanks

A: 

One way to accomplish this is to have a hidden extra (4th in your case) text field. Make it 1x1 px in size and transparent. Then make it the first responder when any of your other 3 text fields are not, and look for text change events in that hidden field to trigger your key input event.

You might also want to check the notification for a software keyboard appearing if you don't want it to stay visible as well.

hotpaw2
Agreed. That's a good idea. Thanks.
hocker
Hey, do you have a code example of how that would work? Especially how I hide the keyboard for the hidden textfield.
Sebastian Wramba