如果模態ViewController演示文稿樣式為UIModalPresentationFormSheet,則iPad鍵盤不會被忽略注意:從iOS 4.3開始,請參閱已接受的答案(不是最受歡迎的答案)。這個問題是關于在iPad鍵盤中發現的行為,如果在帶有導航控制器的模態對話框中顯示,它將拒絕被解雇?;旧?,如果我使用以下行顯示導航控制器,如下所示:navigationController.modalPresentationStyle = UIModalPresentationFormSheet;鍵盤拒絕被解雇。如果我注釋掉這一行,鍵盤就會消失。...我有兩個textFields,用戶名和密碼; username有一個Next按鈕,密碼有一個Done按鈕。如果我在模態導航控制器中顯示它,鍵盤將不會消失。作品broken *b = [[broken alloc] initWithNibName:@"broken" bundle:nil];[self.view addSubview:b.view];什么都不行broken *b = [[broken alloc] initWithNibName:@"broken" bundle:nil];UINavigationController *navigationController = [[UINavigationController alloc]
initWithRootViewController:b];navigationController.modalPresentationStyle = UIModalPresentationFormSheet;navigationController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;[self presentModalViewController:navigationController animated:YES];[navigationController release];[b release];如果我刪除導航控制器部件并將“b”作為模態視圖控制器單獨顯示,則可以正常工作。導航控制器是問題嗎?作品broken *b = [[broken alloc] initWithNibName:@"broken" bundle:nil];b.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;[self presentModalViewController:b animated:YES];[b release];作品broken *b = [[broken alloc] initWithNibName:@"broken" bundle:nil];UINavigationController *navigationController =
[[UINavigationController alloc]
initWithRootViewController:b];[self presentModalViewController:navigationController animated:YES];[navigationController release];[b release];
3 回答

滄海一幻覺
TA貢獻1824條經驗 獲得超5個贊
在以模態方式呈現的視圖控制器中,只需覆蓋disablesAutomaticKeyboardDismissal
以返回NO
:
- (BOOL)disablesAutomaticKeyboardDismissal { return NO;}

暮色呼如
TA貢獻1853條經驗 獲得超9個贊
如果要顯示帶有的模態,請小心UINavigationController
。然后,您必須disablesAutomaticKeyboardDismissal
在導航控制器上設置,而不是在視圖控制器上。您可以使用類別輕松完成此操作。
文件:UINavigationController + KeyboardDismiss.h
#import <Foundation/Foundation.h>@interface UINavigationController (KeyboardDismiss)- (BOOL)disablesAutomaticKeyboardDismissal;@end
文件:UINavigationController + KeyboardDismiss.m
#import "UINavigationController+KeyboardDismiss.h"@implementation UINavigationController(KeyboardDismiss)- (BOOL)disablesAutomaticKeyboardDismissal{ return NO;}@end
不要忘記在使用UINavigationController的文件中導入類別。
- 3 回答
- 0 關注
- 643 瀏覽
添加回答
舉報
0/150
提交
取消