您好,登錄后才能下訂單哦!
Android Dialog里的EdiText輸入法的選擇
正常情況下,默認的EditText多數會自動喚醒輸入法,但是今天群里有人問,為什么Dialog里面的EditText卻不能如此。大致分析了以下,Dialog是自己的單獨的Window,里面setContentView之后的行為也許跟Activity的window有差異,或者是生命周期的原因,導致在Dialog的EditText雖然確實請求了喚醒輸入法,只是輸入法沒有正確顯示吧了。暫且不繼續往下分析了。既然是由于請求顯示輸入法的問題,我門的就在正確的時機正確的請求一次輸入即可。 直接上代碼,這只是一個思路,代碼如何組織,個人自由發揮。
Dialog dialog = new Dialog(this); final EditText view = new EditText(this); dialog.setContentView(view); dialog.show(); // view.post(new Runnable() {
@Override public void run() { InputMethodManager im = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE); im.showSoftInput(view, 0); } });`
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。