对于外观我想在视图控制器中保留 Keyboard
,即使我没有在视图中编辑任何文本字段。
在我的视图控制器中,用户可以单击按钮转到图像选择器以从照片库中选择图像。当我点击imagePicker按钮时, Keyboard
就会消失。
有没有办法 keep the Keyboard present even when the user clicks the imagePicker?
答案 0 :(得分:0)
是的,你可以做到。
由于UIKeyboard是UIWindow的子类,因此唯一足够大的东西 在UIKeyboard的方式是另一个UIWindow。
- (void)viewDidLoad {
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(coverKey) name:UIKeyboardDidShowNotification object:nil];
[super viewDidLoad];
}
- (void)coverKey {
CGRect r = [[UIScreen mainScreen] bounds];
UIWindow *myWindow = [[UIWindow alloc] initWithFrame:CGRectMake(r.size.width - 50 , r.size.height - 50, 50, 50)];
[myWindow setBackgroundColor:[UIColor clearColor]];
[super.view addSubview:myWindow];
[myWindow makeKeyAndVisible];
}
这样键盘永远不会被解雇。
答案 1 :(得分:0)
我假设你有一个 TextField ,试着实现这个:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
checkBool = YES;
return YES;
}
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField
{
return checkBool;
}
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
checkBool = NO;
}
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
return NO;
}
如果您有TextView,请尝试使用TextView委托方法替换它们。