轉載自:http://blog.csdn.net/favormm/article/details/7492692
焦點在UITextField或UITextView中的時候,鍵盤會出現,想點一下背景就讓鍵盤消失。這是在手持設備上服合用戶的操作習慣。當然方法有很多,在這兒我說一個比較實用的方法。
因爲UIView默認是不能關聯方法調用的,而UIControl則不一樣,它可以關聯很多方法。而UIControl是UIView的子類,它有UIView的所有特性,於是我們可以把我們的UIView修改爲UIControl類,這樣再給它關聯一個事件,一般就是up in side,這樣在這個關聯的事件裏我們dismiss所有的UITextField或UITextView.
這兒有一個遞歸找view上所有的UiTextField或UITextView,並dismiss的主法:
- - (void)resignKeyBoardInView:(UIView *)view
- {
- for (UIView *v in view.subviews) {
- if ([v.subviews count] > 0) {
- [self resignKeyBoardInView:v];
- }
- if ([v isKindOfClass:[UITextView class]] || [v isKindOfClass:[UITextField class]]) {
- [v resignFirstResponder];
- }
- }
- }
這個方法是不是很實用呀?實用就頂一個!你們的支持是我無限的動力。