在我的应用程序中,我通过使textview成为第一响应者和resignfirstresponder以及分别设置textview可编辑的YES和NO来强制显示/隐藏键盘。
但是如果我点击textview后隐藏键盘,键盘就不显示了。我正在设置textview委托给自己。委托方法是第一次启动但不是之后。
编辑:我正在使用以下代码,我正在为自定义按钮点击并检查标记以检查键盘是否处于隐藏状态或其他情况:
switch(rotationFlag)
{
case 0:
{
[self hideKeyboard];
rotationFlag = 1;
break;
}
case 1:
{
[self showKeyboard];
rotationFlag = 0;
break;
}
}
-(void)hideKeyboard{
[txtVwForPosts setEditable:FALSE];
[txtVwForPosts resignFirstResponder];
}
-(void)showKeyboard{
[txtVwForPosts setEditable:TRUE];
[txtVwForPosts becomeFirstResponder];
}
我做错了什么?
有人可以帮忙吗? 提前完成。
答案 0 :(得分:0)
switch(rotationFlag)
{
case 0:
{
[self hideKeyboard];
rotationFlag = 1;
break;
}
case 1:
{
[self showKeyboard];
rotationFlag = 0;
break;
}
}
-(void)hideKeyboard
{
[txtVwForPosts resignFirstResponder];
}
-(void)showKeyboard
{
[txtVwForPosts becomeFirstResponder];
}
答案 1 :(得分:0)
我不确定您的代码有什么问题,但以下是我为同样目的编写的代码:
-(IBAction)hideShowKeyboard:(id)sender
{
if([tv isFirstResponder])
{
[tv resignFirstResponder];
}
else
{
[tv becomeFirstResponder];
}
}
这是按钮的动作。和电视是TextView插座。但是,在隐藏键盘后,此视图不会检测文本视图上的点击。如果要检测水龙头,请避免将editable属性设置为NO。