2017-09-12 5 views
0

Ich habe eine Registerkarte in meiner Fußzeile. Wenn die Tastatur angezeigt wird, erscheinen meine Tabs oben auf der Tastatur. Ich möchte meine Tabs ausblenden, wenn die Tastatur angezeigt wird. gibt es in diesem Fall eine Lösung?Tabs erscheinen auf der Oberseite der Tastatur in ionischen 3

link image here

+0

Es sieht so aus, als ob Ihre Aktivität in der Größe geändert wird, wenn die Tastatur angezeigt wird. Leider habe ich keine Erfahrung mit ionischen, aber haben Sie eine 'Manifest'-Datei oder etwas ähnliches, das Sie mit uns teilen können? Wenn meine Vermutung richtig ist, gibt es die Bestätigung dafür. –

Antwort

0

Wenn Sie die Ansicht auf nicht die Größe, wenn die Tastatur geöffnet ist, wird der Boden der WebView hinter der Tastatur versteckt werden. Leider gibt es keine direkte Möglichkeit zu überprüfen, wann sich die Tastatur öffnet und schließt (ich denke, das liegt daran, dass einige Geräte keine Softwaretastatur haben), aber Sie können darauf achten, wenn eine Ansicht ihre Größe ändert und dann die Tab-Leiste sichtbar macht. unsichtbar, wenn zutreffend:

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); 
    } 
} 
}); 
Verwandte Themen