【问题标题】:Why iOS default did not support auto keyboard dismiss function?为什么 iOS 默认不支持键盘自动关闭功能?
【发布时间】:2015-06-30 05:09:36
【问题描述】:

当我用swift开发iOS应用程序时,我想知道为什么苹果不支持应用程序中的自动关闭键盘功能。这意味着如果我在屏幕上实现 TextLabel,我点击了该标签,键盘出现,但没有自动关闭。

我认为当用户在键盘屏幕外点击或单击屏幕上的“完成”按钮时,许多应用程序键盘都需要关闭。但是,基本上,我必须在每个 ViewController 上实现键盘关闭功能。我认为这是代码重复。

任何人都可以向我解释一下苹果的应用程序方法实现理念以及我如何编写一个可重用的函数,这不是每个 ViewController 方案中的重复函数。

【问题讨论】:

  • 每个应用程序都不同。并非每个应用程序都希望自动关闭。如果你想要它,就实现它。
  • @rmaddy 表示每个应用程序开发人员选择的自动关闭功能选项?
  • 那为什么TextView同样默认支持键盘编辑功能呢?我的意思是,与“标签”不同,“文本”意味着可编辑吗?
  • 一个 UITextView/UITextField 是可编辑的。 UILabel 不是。
  • 我认为这对每个应用程序都是必要的,但时间会因应关闭的时间而异。例如:对于一个短信应用程序,我点击发送按钮后我想发送另一条短信。那么我不应该关闭键盘。

标签: ios code-reuse


【解决方案1】:

转自评论:

在主要功能使用键盘的一般应用程序中,宁愿控制键盘何时自行关闭,而不是依靠自动功能。

例如:对于一个短信应用,在我点击发送按钮后,我想再发送一条短信。那么我不应该关闭键盘。

如果您多次关闭键盘,我会尝试创建一个视图控制器类来处理它并将其子类化。您可以观察键盘何时显示并在视图顶部添加一个按钮,以便在单击它时使用[self.view endEditing:YES];关闭键盘

【讨论】:

    猜你喜欢
    • 2015-06-13
    • 2018-04-03
    • 2020-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-24
    • 1970-01-01
    相关资源
    最近更新 更多