【问题标题】:Detect when a user presses the space button检测用户何时按下空格键
【发布时间】:2015-01-10 05:16:19
【问题描述】:

我目前的键盘设置为数字和标点符号[因此用户可以输入连字符]。有谁知道如何检测用户是否按下空格键,以便我可以自动将样式设置为不同的键盘类型 [在我的大小写字母中],这样我就不必构建自定义键盘?

【问题讨论】:

  • 这是针对 UITextField 的吗?查看委托方法。
  • 键盘有一个地球按钮,允许用户将键盘更改为默认定义或在已安装的键盘之间旋转 - 如果您仍想输入代码以检测是否按下了空格键textfield/ textview 委托方法特别要使用的是 textView shouldChangeTextinRange - ... - - 如果您仍然需要代码,请询问,
  • @aMrAhD_nAleEhS 谢谢但不是谢谢,特别声明如果可能的话我不想创建自定义键盘
  • @rmaddy 是的,它是搜索显示控制器搜索栏中的文本字段

标签: ios keyboard-events


【解决方案1】:

试试这个代码 - 我确信它会检测到是否编码了空格字符 - 我还没有真正测试过键盘开关的工作情况。一旦下面的代码工作,您还应该尝试不使用 resignfirstresponder becomefirstresponder 代码。祝你好运! (PS你的viewCONtroller需要声明为UITextview或者textfield Delegate)

    - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:         (NSString *)text_message {
   if ([text_message isEqual:@" "]) {
//     Put your code to change the keyboard then refresh the screen.
       [textView resignFirstResponder];   //close textview or textfield 
       [textView setKeyboardType:UIKeyboardTypeDefault];
       [textView becomeFirstResponder];  // opens keyboard for textfield or textview
       [self.view setNeedsRefresh];  // refresh view
  //   return NO;  
  }
  return YES;  //go back to editing
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-04
    • 1970-01-01
    • 2022-01-12
    • 1970-01-01
    相关资源
    最近更新 更多