2017-09-12 80 views
0

我在頁腳有一個標籤。當鍵盤顯示時,我的選項卡出現在鍵盤上。我希望在鍵盤顯示時隱藏我的選項卡。 在這種情況下是否有解決方案?標籤出現在離子鍵盤的頂部3

link image here

+0

看起來您的活動在顯示鍵盤時會調整大小。不幸的是,我沒有任何關於離子的經驗,但是你有一個'Manifest'文件或類似的東西,你可以與我們分享?如果我的猜測是正確的,那就證實了。 –

回答

0

如果你設置視圖當鍵盤打開不調整,web視圖的底部將在鍵盤的背面隱藏。不幸的是,沒有直接的方法來檢查鍵盤打開和關閉的時間(我認爲這是因爲某些設備沒有軟件鍵盤),但是當視圖改變其大小時可以監聽,然後使標籤欄可見/適當時隱形:

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