Larutan
Berikut ini adalah solusi lengkap / penyelesaian untuk masalah ini, mohon pilih jawaban Blld juga karena ini adalah informasi penting yang diperlukan!
Judul alternatif untuk membantu pencarian
- Menampilkan keyboard Emoji sebagai default untuk objek UIKeyInput (di iOS 13)
- Paksa iOS 13 untuk menampilkan keyboard Emoji
- Mengatur
UITextInputMode.primaryLanguageto emoji - Secara sistematis mengatur keyboard ke emoji
Sebelum ios13 mengembalikan UITextInputModedengan primaryLanguageyang sama dengan "emoji" akan secara default menampilkan Keyboard Emoji (lihat gambar di bawah).
Contoh kode untuk mengembalikan "emoji" UITextInputMode.
//
// ViewController.swift
// Keyboard Info
//
// Created by Richard Stelling on 30/09/2019.
// Copyright © 2019 Richard Stelling. All rights reserved.
//
import UIKit
class TestButton: UIButton, UIKeyInput {
var hasText: Bool = true
func insertText(_ text: String) { print("\(text)") }
func deleteBackward() {}
override var canBecomeFirstResponder: Bool { return true }
override var canResignFirstResponder: Bool { return true }
override var textInputMode: UITextInputMode? {
for mode in UITextInputMode.activeInputModes {
if mode.primaryLanguage == "emoji" {
return mode
}
}
return nil
}
}
Menjalankan kode ini di iOS 12 akan mengatur keyboard ke sistem Emoji Keyboard, tetapi di iOS 13 tidak ada pengaruhnya.
Apakah ini bug yang dikenal? Apakah ada solusinya?
Pembaruan
- Diminta oleh @Navillus , daftar lengkap "mode input aktif" adalah; "en-GB", "emoji"
- Diuji dan dikonfirmasi pada; 13.0, 13.1, 13.1.1, 13.1.2 dan 13.2 (seed 1)
