Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/44.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 如何使用同一按钮隐藏和显示键盘_Iphone_Button_Keyboard_Uitextfield - Fatal编程技术网

Iphone 如何使用同一按钮隐藏和显示键盘

Iphone 如何使用同一按钮隐藏和显示键盘,iphone,button,keyboard,uitextfield,Iphone,Button,Keyboard,Uitextfield,我有UITextField,它在应用程序启动时成为第一响应者。然后,我有一个ui按钮,当按下它时,它将退出FirstResponder 如何使用相同的按钮隐藏和显示键盘?可能吗?根据您的需要,以下代码应该具有相同的按钮,用于隐藏和显示文本字段的键盘 -(IBAction) buttonPressed:(id) sender { UIButton *button = (UIButton *) sender; button.selected = !button.sel

我有
UITextField
,它在应用程序启动时成为第一响应者。然后,我有一个
ui按钮
,当按下它时,它将
退出FirstResponder


如何使用相同的按钮隐藏和显示键盘?可能吗?

根据您的需要,以下代码应该具有相同的按钮,用于隐藏和显示文本字段的键盘

-(IBAction) buttonPressed:(id) sender {
        UIButton *button = (UIButton *) sender;
        button.selected = !button.selected;
        if (button.selected) {
            // show the keyboard.
            [textField becomeFirstResponder];
        }else {
            // Hide the keyboard.
            [textField resignFirstResponder];
        }
}
if ([textField isFirstResponder]) {
    [textField resignFirstResponder];
} else {
    [textField becomeFirstResponder];
}
编辑
您还可以输入代码来更改if循环中按钮的标题。

放置代码以更改按钮标题的适当位置将位于textField的委托方法中
-textfieldDiBeginediting:
-textFieldDidEndEditing:

按钮从未被选中。将始终隐藏键盘!?您希望按钮的性能如何?
mytest.h

IBOutlet UITextField *myTextField;
IBOutlet UIButton *myButton

- (IBAction) showHideKeyBoard:(id)sender;

mytest.m

-(IBAction) showHideKeyBoard:(id) sender {

        if (myButton.selected) {
            // show the keyboard.
            [myTextField becomeFirstResponder];
            [myButton setTitle:@"Hide" forState:UIControlStateNormal];
            myButton.selected = NO;
        }else {
            // Hide the keyboard.
            [myTextField resignFirstResponder];
            [myButton setTitle:@"Show" forState:UIControlStateNormal];
            myButton.selected = YES;
        }
}