Quelques problèmes mineurs avec le clavier logiciel Android

Il existe de nombreuses utilisations du clavier virtuel dans Android. Les paramètres suivants sont couramment utilisés pour le clavier virtuel;

1. Lorsque l'écran est horizontal, cliquez sur la zone de saisie pour afficher la solution complète du clavier: ajoutez dans EditText, searchview et d'autres contrôles

?

1

android:imeOptions="flagNoExtractUi"

2. Lorsque l'écran est vertical, Android affichera un demi-écran.

case1: votre zone de saisie est en position médiane et inférieure. Dans ce cas, le clavier peut bloquer la zone de saisie. Solution: définissez l'activité dans le manifeste

?

1

android:windowSoftInputMode="adjustResize"

De cette façon, la fenêtre principale de l'activité sera toujours redimensionnée pour fournir de l'espace au clavier

case2: Votre zone de saisie est sur le côté supérieur. Dans des circonstances normales, il n'y aura pas de problème, mais si votre interface utilise layout_weight, c'est-à-dire une gravité spécifique pour distribuer les pages dans le sens vertical, le disque du logiciel compressera toute la fenêtre, résultant en une partie de la zone de saisie Soyez compressé. Solution: définissez l'activité dans le manifeste

?

1

android:windowSoftInputMode="adjustPan"

De cette façon, le clavier ne compressera pas la fenêtre d'origine, mais ne couvrira qu'une partie du contenu ci-dessous. De cette façon, la zone de saisie ne sera pas compressée.

3. Entrez simplement une activité, la zone de saisie de mise au point, puis affichera automatiquement le clavier virtuel, si vous ne voulez pas apparaître automatiquement, vous pouvez d'abord laisser les autres contrôles sans importance se concentrer, puis un minuteur puis laisser EditText se concentrer !

4. Déterminez si le clavier virtuel est actuellement dans l'état contextuel

?

1

if(getWindow().getAttributes().softInputMode==WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE)

5. Masquer manuellement le clavier virtuel

?

1

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);

6. Ouvrez manuellement le clavier virtuel

?

1

((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).toggleSoftInput(0,InputMethodManager.HIDE_NOT_ALWAYS);

A publié 10 articles originaux · J'aime 11 · Visites 20 000+

Je suppose que tu aimes

Origine blog.csdn.net/u013323018/article/details/83186056
conseillé
Classement