EditText獲取不到焦點以及不自動彈出軟鍵盤

2021-10-01 20:05:41 字數 970 閱讀 9902

按照廣大熱心網友的指導,做了以下操作:

dittext.setfocusable(true);

edittext.setfocusableintouchmode(true);

edittext.requestfocus();

activity.getwindow().setsoftinputmode(windowmanager.layoutparams.soft_input_state_always_visible);

以及在androidmanifest.xml中設定:

android:windowsoftinputmode="statevisible|adjustresize"
然鵝,發現並無卵用。後來看到個覺得靠譜的解釋:

android載入重新整理ui的時候,是從左到右,從上到下的順序,正在載入的過程中,如果此時requestfocus(),的話,有可能此時還沒把整個介面重新整理好,導致requestfocus無效。

因此,做了個延遲載入:

edittext.postdelayed(() -> , 300);
果然就可以了,看到游標開始在閃了,可是此時如果想讓他自動彈出來呢?

直接貼上完整**吧,延時時間自定:

/**

* edittext獲取焦點並顯示軟鍵盤

*/public static void showsoftinputfromwindow(activity activity, edittext edittext) , 300);

// 強制開啟鍵盤

timer timer = new timer();

timer.schedule(new timertask()

}, 200);

}

EditText獲取焦點和失去焦點

在android開發中,關於edittext自動獲取焦點彈出鍵盤,我們可能又是會有讓鍵盤自動彈出的需求,有時可能又會有不想讓鍵盤自動彈出的需求 需求 edittext自動獲取焦點並彈出鍵盤,edittext.setfocusable true edittext.setfocusableintouch...

EditText 不讓其自動獲取焦點

在專案中,一進入乙個頁面,edittext預設就會自動獲取焦點。那麼如何取消這個預設行為呢?在網上找了好久,有點 監聽軟鍵盤事件,有點 呼叫 clearfouse 方法,但是測試了都沒有!xml中也找不到相應的屬性可以關閉這個預設行為 解決之道 在edittext的父級控制項中找乙個,設定成 and...

EditText焦點問題

1 在乙個activity中加入乙個edittext後,每次進入這個activity時輸入法都會自己主動彈出來。非常煩,找了些資料,在此記下解決的方法 方法 在edittext的父控制項中獲得焦點。這樣焦點就不會自己主動跑到edittext上了。2 希望在edittext獲得焦點時才彈出輸入法,失去...