【问题标题】:is it possible to disable keyboad(UITextField) without hidding?是否可以在不隐藏的情况下禁用键盘(TextField)?
【发布时间】:2012-07-22 13:24:24
【问题描述】:

我想在不隐藏的情况下禁用 UITextField 的键盘。 可能吗? 如果是这样,你能告诉我怎么做吗?

感谢

汽车

【问题讨论】:

  • 您的意思是,在按下时禁用键盘的缩放效果(忽略所有内容)?还是直接忽略类型输入?
  • 禁用键盘是什么意思?
  • 您是说要显示键盘但禁用它?
  • 我的意思是 Nitish 所说的。我想显示键盘但禁用它。

标签: iphone ios uitextfield disabled-input


【解决方案1】:

如果你实现了 uitextfield 的委托方法

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
   return NO;
}

它不显示键盘。

【讨论】:

【解决方案2】:

我不相信 UIKeyboard 可以在不隐藏的情况下被禁用。

如果您想禁用用户与键盘的交互,您可以在现有窗口的顶部添加一个额外的 UIWindow。

通过用透明的 UIWindow 覆盖 UIKeyboard,用户将能够看到键盘,而无需与之交互。

【讨论】:

    【解决方案3】:

    哈哈,我有一个非常非常丑陋的方法。您可以创建一个框架 = 键盘框架的视图。 [view setBackgroundColor:[UIColor clearColor]]; [self addSubviews:view];

    【讨论】:

    • 好主意!但我无法在键盘上设置视图。
    • 视图是透明的,用户看不到。它的用途是屏蔽键盘的触感。当键盘关闭时,视图将从父视图中移除
    【解决方案4】:

    我没有尝试,但这应该可以:

    textField.inputView.userInteractionEnabled = NO;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-28
      • 1970-01-01
      • 2015-08-01
      • 2012-09-16
      • 1970-01-01
      • 2020-09-17
      • 1970-01-01
      • 2017-08-04
      相关资源
      最近更新 更多