溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Android Dialog里的EdiText輸入法的選擇

發(fā)布時(shí)間:2020-09-21 18:58:42 來(lái)源:腳本之家 閱讀:162 作者:lqh 欄目:移動(dòng)開(kāi)發(fā)

Android Dialog里的EdiText輸入法的選擇

正常情況下,默認(rèn)的EditText多數(shù)會(huì)自動(dòng)喚醒輸入法,但是今天群里有人問(wèn),為什么Dialog里面的EditText卻不能如此。大致分析了以下,Dialog是自己的單獨(dú)的Window,里面setContentView之后的行為也許跟Activity的window有差異,或者是生命周期的原因,導(dǎo)致在Dialog的EditText雖然確實(shí)請(qǐng)求了喚醒輸入法,只是輸入法沒(méi)有正確顯示吧了。暫且不繼續(xù)往下分析了。既然是由于請(qǐng)求顯示輸入法的問(wèn)題,我門的就在正確的時(shí)機(jī)正確的請(qǐng)求一次輸入即可。 直接上代碼,這只是一個(gè)思路,代碼如何組織,個(gè)人自由發(fā)揮。

 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);
    }
  });`

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI