說(shuō)明
我們?cè)陂_發(fā)項(xiàng)目的過程中,一定會(huì)有這樣的需求,就是在剛進(jìn)入有EditText的頁(yè)面時(shí),不讓軟鍵盤彈出,只有用戶自己手動(dòng)的去觸摸EditText輸入框時(shí)候才讓軟鍵盤自動(dòng)彈出,這樣做其實(shí)也是提高用戶體驗(yàn),讓用戶可以切身的體驗(yàn)到這樣做的好處,那么接下來(lái)我們就來(lái)看下在代碼中該如何實(shí)現(xiàn)這樣的需求。具體做法
針對(duì)于這樣的需求,有2種處理方式:
2.1 第一種是在清單文件中對(duì)應(yīng)的Activity中配置:
//stateHidden: 隱藏軟鍵盤
//adjustPan: 保證控件不會(huì)因?yàn)檩斎敕ǖ膹棾龆l(fā)生變形
<activity android:name=".activity.LoginActivity"
android:theme="@style/Theme.AppCompat.Light.NoActionBar
android:windowSoftInputMode="stateHidden|adjustPan"
/>
2.2 第二種是在onCreate()方法中寫:
//避免進(jìn)入頁(yè)面EdiText自動(dòng)彈出軟鍵盤
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
注意:
如果是采用第二種方式的話,建議將這句代碼寫到BaseActvity或者BaseFragment的基類中,有利于簡(jiǎn)化代碼的書寫。