【问题标题】:Detecting keyboard "submit button" press for TextEditor SwiftUI检测 TextEditor SwiftUI 的键盘“提交按钮”按下
【发布时间】:2022-01-15 23:45:44
【问题描述】:

在 SwiftUI 的 TextField 上,您可以使用 .onSubmit() 修饰符为键盘的返回/提交按钮设置操作。您如何使用TextEditor 实现相同的目标? (.onSubmit() 似乎不起作用。)

【问题讨论】:

    标签: swiftui swiftui-texteditor


    【解决方案1】:

    您可以对TextEditor 的绑定变量使用 on change,如下所示:

        TextEditor(text: $text)
            .onChange(of: text) { _ in
                if !text.filter({ $0.isNewline }).isEmpty {
                    print("Found new line character")
                }
            }
    

    意识到TextEditor 本身没有提交按钮。它旨在接受无限量的各种文本。

    【讨论】:

      【解决方案2】:

      这是您的解决方案:

      onCommit:当用户按下 Return 键时,TextField 会调用 onCommit 闭包。

      【讨论】:

      • OP 询问的是TextEditor,而不是TextField。此外,.onCommit 已被弃用,取而代之的是 OP 讨论的.onSubmit
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-10-24
      • 2013-05-17
      • 1970-01-01
      • 2021-12-12
      • 2012-10-02
      • 1970-01-01
      相关资源
      最近更新 更多