转载地址:http://www.cnblogs.com/minglz/archive/2012/11/17/2770848.html
退出虚拟键盘:
b)在BIDViewController.m的最后实现textFieldDoneEditing方法
- (IBAction)textFieldDoneEditing:(id)sender { [sender resignFirstResponder]; }
(下面是我个人对resignFirstResponder的理解,如果有错,希望大家能够指正,谢谢!)
这里注意“resignFirstResponder”,FirstResponder的意思是正在和用户交互的那个控件,textfield正在和用户交互,这时的它就是FirstResponder。 resignFirstResponder的意思是放弃第一响应者,即textfield不再和用户进行交互,那么此时的textfield也不会获得焦点,这样键盘就自然而然的消失了。
当我们点击屏幕上任何空白的地方时(包括ImageView和Label这些非活动控件,即静态控件),使键盘消失,这个操作相对简单,且可行性较高。
转载地址:http://blog.csdn.net/tangshoulin/article/details/6634438
resignFirstResponder(交出自己的第一响应者的身份,可以重写改函数,这样如果写出no的时候当调用这个方法的时候它会拒绝交出第一响应者的身份)
Notifies the receiver that it has been asked to relinquish(交出)its status as first responder in its window.
- (BOOL)resignFirstResponder
Discussion
The default implementation returns YES, resigning first responder status. Subclasses can overridethis method to update state or perform some action such as unhighlighting theselection, or to return NO, refusing torelinquish first responder status.
canResignFirstResponder
Returns a Boolean value indicating whether the receiver iswilling to relinquish first-responder status.
- (BOOL)canResignFirstResponder
Return Value
YES if the receiver canresign(辞职 消去) first-responder status, NO otherwise.
Discussion
Returns YES by default. Asan example, a text field in the middle of editing might want to implement thismethod to return NO to keep itself activeduring editing.
isFirstResponder
Returns a Boolean value indicating whether the receiver is thefirst responder.
- (BOOL)isFirstResponder
Return Value
YES if the receiver is thefirst responder, NO otherwise.