如何使用 swiftui 创建表情符号键盘?

-3 api swift swiftui

我似乎无法找到如何在 swiftui 中创建表情符号键盘。有没有办法构建一个仅包含表情符号的文本字段?

我收到 4 个错误,这是照片的链接

shr*_*a11 5

见下图请尝试这个。希望能帮助到你。

\n\n
import SwiftUI\n\nstruct EmojiTF: View {\n\n    @State var emojiText = ""\n\n\n    var body: some View {\n        VStack(spacing: 10) {\n            Text("Emoji Pad:")\n                .font(.body)\n                .foregroundColor(.gray)\n\n            TextFieldWrapperView(text: self.$emojiText)\n                .background(Color.gray)\n                .frame(width: 200, height: 50)\n        }\n        .frame(height: 40)\n    }\n}\n\n\nstruct TextFieldWrapperView: UIViewRepresentable {\n\n    @Binding var text: String\n\n    func makeCoordinator() -> TFCoordinator {\n        TFCoordinator(self)\n    }\n}\n\nextension TextFieldWrapperView {\n\n\n    func makeUIView(context: UIViewRepresentableContext<TextFieldWrapperView>) -> UITextField {\n        let textField = EmojiTextField()\n        textField.delegate = context.coordinator\n        return textField\n    }\n\n\n    func updateUIView(_ uiView: UITextField, context: Context) {\n\n    }\n}\n\nclass TFCoordinator: NSObject, UITextFieldDelegate {\n    var parent: TextFieldWrapperView\n\n    init(_ textField: TextFieldWrapperView) {\n        self.parent = textField\n    }\n\n    //        func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {\n    //            if let value = textField.text {\n    //                parent.text = value\n    //                parent.onChange?(value)\n    //            }\n    //\n    //            return true\n    //        }\n}\n\n\nclass EmojiTextField: UITextField {\n\n    // required for iOS 13\n    override var textInputContextIdentifier: String? { "" } // return non-nil to show the Emoji keyboard \xc2\xaf\\_(\xe3\x83\x84)_/\xc2\xaf\n\n    override var textInputMode: UITextInputMode? {\n        for mode in UITextInputMode.activeInputModes {\n            if mode.primaryLanguage == "emoji" {\n                return mode\n            }\n        }\n        return nil\n    }\n}\n\nstruct EmojiTF_Previews: PreviewProvider {\n    static var previews: some View {\n        EmojiTF()\n    }\n}\n
Run Code Online (Sandbox Code Playgroud)\n