2017-09-12 2 views
0

J'ai un onglet dans mon pied de page. lorsque le clavier s'affiche, mes onglets apparaissent sur le dessus du clavier. Je veux que mes onglets se cachent quand le clavier montre. y at-il une solution dans ce cas?Les onglets apparaissent sur le dessus du clavier en mode ionique 3

link image here

+0

Il semble que votre activité soit redimensionnée lorsque le clavier est affiché. Malheureusement, je n'ai aucune expérience avec ionic, mais avez-vous un fichier 'Manifest' ou quelque chose de similaire que vous pouvez partager avec nous? Si ma supposition est bonne, il y a la confirmation pour cela. –

Répondre

0

Si vous définissez la vue de ne pas redimensionner lorsque le clavier est ouvert, le fond de la WebView sera caché derrière le clavier. Malheureusement, il n'y a aucun moyen direct de vérifier quand le clavier s'ouvre et se ferme (je pense que c'est parce que certains périphériques n'ont pas de clavier logiciel) mais vous pouvez écouter quand une vue change de taille, puis rendre visible la barre d'onglets/invisible le cas échéant:

rootView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { 
@Override 
public void onGlobalLayout() { 

    Rect r = new Rect(); 
    rootView.getWindowVisibleDisplayFrame(r); 
    int screenHeight = rootView.getRootView().getHeight(); 

    int keypadHeight = screenHeight - r.bottom; 

    if (keypadHeight > screenHeight * 0.15) { // 0.15 ratio is perhaps enough to determine keypad height. 
     // keyboard is opened 
     myTabView.setVisibility(GONE); 
    } 
    else { 
     // keyboard is closed 
     myTabView.setVisibility(VISIBLE); 
    } 
} 
});