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.primaryLanguage
to emoji - Secara sistematis mengatur keyboard ke emoji
Sebelum ios13 mengembalikan UITextInputMode
dengan primaryLanguage
yang 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)