Solution
Voici une solution complète / contourner ce problème, veuillez également voter la réponse de Blld parce que c'était le peu essentiel d'informations nécessaires!
Titres alternatifs pour faciliter la recherche
- Affichage du clavier Emoji par défaut pour un objet UIKeyInput (dans iOS 13)
- Forcer iOS 13 à montrer le clavier Emoji
- Définition de l'
UITextInputMode.primaryLanguage
emoji - Réglez le clavier en emoji par programmation
Avant ios13, renvoyer le UITextInputMode
avec primaryLanguage
cet "emoji" égal aurait par défaut pour afficher le clavier Emoji (voir l'image ci-dessous).
Exemple de code pour retourner les "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
}
}
L'exécution de ce code sur iOS 12 définira le clavier sur le clavier Emoji du système, mais sur iOS 13, cela n'a aucun effet.
Est-ce un bug connu? Y at-il un travail autour?
Mises à jour
- Demandé par @Navillus , la liste complète des "modes d'entrée actifs" est; "en-GB", "emoji"
- Testé et confirmé le; 13.0, 13.1, 13.1.1, 13.1.2 et 13.2 (graine 1)