軟鍵盤無法把內容頂出屏幕外

轉載請標明出處,維權必究:http://www.nxrnyq.tw/tangZH/p/12037179.html

 

繼上次這一篇后:http://www.nxrnyq.tw/tangZH/p/12013685.html

我繼續探討,這次的場景和上一次的場景是一樣的,在一個布局中,根布局是相對布局,需要被軟鍵盤頂上去的部分為線性布局。線性布局最下方為一個Editext,后來發現,當線性布局的內容過多的時候,線性布局沒法被頂出屏幕外,到達頂端就停止了,導致下方的EdiText被軟鍵盤遮擋住。

 

我在根布局最外層套上一個ScrollView,這樣一來發現下方的Editext還是會被遮擋住,但是不同的是,這時候你可以去手動將整個布局往上滑動,可我們需要的是頂上去之后自動露出來全部,而不是靠用戶手動去滑,于是乎我想到了下面這種方法:

scrollView = findViewById(R.id.scroll);
view.getViewTreeObserver().addOnGlobalLayoutListener(
   () -> scrollView.fullScroll(ScrollView.FOCUS_DOWN));

監聽view布局發現變化(也就是軟鍵盤出現或者消失的時候)的時候就將scrollView滑動到最底下,這樣就能夠使得需要顯示的內容不被軟鍵盤遮擋。

posted @ 2019-12-14 19:49  妖久  閱讀(...)  評論(...編輯  收藏
四川金7乐历史开奖号码查询