android - clavier edittext ne s'affiche pas
Je crée un edittext par programmation . Mais je n'ai rien pu taper dans l'edittext . J'ai couvert toutes les réponses liées sur ce site mais aucune d'elles n'a fonctionné pour moi. Il me manque peut-être quelques détails mineurs. Ce serait utile si je pouvais obtenir de l'aide.
Code pour créer un edittext dynamiquement:
EditText editText = new EditText(dt.c);
editText.setBackground(context.getResources().getDrawable(R.drawable.rectangle_answer));
editText.setTextColor(ContextCompat.getColor(dt.c, R.color.md_black_1000));
editText.setTextSize(16);
editText.setTag(questionDetails[0].getOptionId());
editText.setFocusable(true);
editText.setHint(dt.gStr(R.string.enter_your_answer));
editText.requestFocus();
container.Add(editText);
Certaines des réponses que j'ai couvertes:
Comment puis-je définir le focus (et afficher le clavier) sur mon EditText par programmation
Android - EditText créé par programme sans afficher le clavier
Android: Comment ouvrir le clavier pour éditer EditText lorsque vous cliquez sur le bouton?
Désactiver le clavier sur EditText
Comment désactiver le clavier lorsque je clique sur EditText?
Réponses
J'avais le même problème et rien ne fonctionnait jusqu'à ce que je trouve une réponse dans l'un des messages d'il y a des années qui fonctionnait. Je republierai le hack étrange pour tous ceux qui pourraient avoir ce problème à l'avenir.
Dans votre fichier xml, ajoutez un edittext factice à votre couche de mise en page supérieure qui ressemble à ceci:
<EditText
android:id="@+id/editTextFix"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:importantForAutofill="no"
tools:targetApi="o"
android:inputType="text"
android:visibility="gone"/>
l'edittext factice ouvrira le clavier, mais votre edittext créé par programme aura toujours le focus.