關於軟鍵盤的頂起底部內容的問題

今天在做一個需要輸入很多內容的界面的時候出現了一些小問題

目標是:點擊輸入框的時候,彈出的軟鍵盤能把界面往上頂,讓軟鍵盤上面就是正在輸入的輸入框

出現的問題:在軟鍵盤改變了佈局的時候,底部的內容跟着軟鍵盤往上移動了,剛好擋住了輸入框

思路1:能否讓底部的佈局不受系統軟鍵盤影響

做法:在底部內容上添加了

android:fitsSystemWindows="false"

意思是讓底部的view不受系統UI影響

結果:並沒有什麼效果

原因:https://blog.csdn.net/smileiam/article/details/69055963

需要在沉浸式的界面中,並且我僅知道這個語句在爲“true”的時候,是計算系統UI的大小並給view添加一個padding

至於“false”是不是不計算系統UI大小 並可以與系統UI(軟鍵盤)重疊只是我的猜測。同時軟鍵盤是否算系統UI這個我也是猜着他是而已

思路2:讓界面的所有佈局都不受軟鍵盤彈起影響

這個思路與想要實現的效果有衝突,所以打算在這個情況疊加手動讓輸入框,移動到軟鍵盤上方

結果想着想着,就看到了一個和我情況基本相同的老哥

https://blog.csdn.net/wayne214/article/details/83824065

看到裏面提到的屬性(adjustPan),明顯就是讓整個界面不會隨着軟件盤調整的參數

想着這個老哥可能思路和我類似就瞭解了一下另外一個屬性(stateAlwaysHidden)的意思

https://blog.csdn.net/Rodulf/article/details/84575595

結果發現我對 adjusPan 這個屬性有誤解

這個屬性是讓固定的界面不調整,而滾動的界面一樣會隨着軟鍵盤調整(例如:scrollview)

而意味着完全不調整的屬性是 adjustNothing

stateAlwaysHidden的意思是 進入界面的時候不主動彈出軟鍵盤

所以這個問題在manifest裏面對着activity添加

android:windowSoftInputMode="stateAlwaysHidden|adjustPan"

這個語句就解決了,(stateAlwaysHidden)沒關係

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章