问题
By default, if you shake the iPhone while entering text in a UITextField
, a little box will appear asking if you want to undo typing. How can I prevent this from happening? I looked through the UITextField, UITextFieldDelegate, and UITextInputTraits docs and found nothing relating to shaking.
Presumably I could subclass UITextField
to ignore the shake event, but I'm not exactly confident in my ability to not screw other things up. I'd love something like
textField.respondsToShake = FALSE;
What's the best way to do this?
回答1:
[UIApplication sharedApplication].applicationSupportsShakeToEdit = NO;
回答2:
You could try to subclass UITextField
and override canPerformAction:withSender:
in such a way that it will disallow the undo:
action. But then you lose undo both by shaking and through the context menu.
来源:https://stackoverflow.com/questions/3663160/how-to-stop-the-uitextfield-from-responding-to-the-shake-gesture