iPad keyboard will not dismiss if modal view controller presentation style is UIModalPresentationFor
2014-08-11 23:24
651 查看
在ipad上present 一个 navigation controller 时,present后弹出的keyboard,不能够 dismiss 掉。即使 textfield resignFirstResponder,keyboard也不会消失。
Problem:
在iPad keyboard上发现一个问题,当viewController在navigation controller下以模态视图弹出,并且navigationController.modalPresentationStyle = UIModalPresentationFormSheet时,点击done按钮,软键盘不撤销,即使 textfield resignFirstResponder了。
Solution:
当模态视图在 UINavigationControlle下显示,我们需要设置 navigation controller的disablesAutomaticKeyboardDismissal属性,我们可以通过添加类别实现这个。
File: UINavigationController+KeyboardDismiss.h
#import
@interface UINavigationController (KeyboardDismiss)
- (BOOL)disablesAutomaticKeyboardDismissal;
@end
File: UINavigationController+KeyboardDismiss.m
#import "UINavigationController+KeyboardDismiss.h"
@implementation UINavigationController(KeyboardDismiss)
- (BOOL)disablesAutomaticKeyboardDismissal
{
return NO;
}
@end
在需要用到的ViewController文件中导入创建的类别即可。
Problem:
在iPad keyboard上发现一个问题,当viewController在navigation controller下以模态视图弹出,并且navigationController.modalPresentationStyle = UIModalPresentationFormSheet时,点击done按钮,软键盘不撤销,即使 textfield resignFirstResponder了。
Solution:
当模态视图在 UINavigationControlle下显示,我们需要设置 navigation controller的disablesAutomaticKeyboardDismissal属性,我们可以通过添加类别实现这个。
File: UINavigationController+KeyboardDismiss.h
#import
@interface UINavigationController (KeyboardDismiss)
- (BOOL)disablesAutomaticKeyboardDismissal;
@end
File: UINavigationController+KeyboardDismiss.m
#import "UINavigationController+KeyboardDismiss.h"
@implementation UINavigationController(KeyboardDismiss)
- (BOOL)disablesAutomaticKeyboardDismissal
{
return NO;
}
@end
在需要用到的ViewController文件中导入创建的类别即可。
相关文章推荐
- Ipad项目中用到的UIModalPresentationFormSheet,点击阴影部分dismiss 当前presented的controller
- ViewController 0x8f35e00> setValue:forUndefinedKey:]: this class is not key value coding-compliant f
- iOS: Warning: Attempt to present <ModalViewController> on <ViewController>while a presentation is in
- UIModalPresentationStyle即viewcontroller的显示方式
- The prefix "mvc" for element "mvc:view-controller" is not bound.
- The prefix "mvc" for element "mvc:view-controller" is not bound.
- The POM for XXX is invalid, transitive dependencies (if any) will not be available
- 弹出模态ViewController、UIModalPresentationStyle和UIModalTransitionStyle
- presentModalViewController使用 UIModalPresentationFormSheet,无法改变frame大小
- 通过模态弹出视图 self.view.window.rootViewController灵活应用 modalTransitionStyle、modalPresentationStyle
- presentModalViewController使用 UIModalPresentationFormSheet,无法改变frame大小
- iOS 跳转出现attempt to dismiss modal view controller whose view does not currently ……的解决方案
- Scene is unreachable due to lack of entry points and does not have an identifier for runtime access via -instantiateViewControllerWithIdentifier解决办法
- 关于android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an app
- if loves is move,and heart will not links!
- 因IOS版本导致的模态视图控制器dismissModalViewControllerAnimated调用问题
- Core file limit is 0; core dumps will be not be written for server crashes 解决方案
- viewWillAppear: not being called inside a UINavigationController
- android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an appli
- iOS: 如何dismissModalViewController AND pass data back