可以透過下面的程式碼來實現Android自動彈出軟鍵盤:
edittext.requestFocus(); //edittext是一個EditText控制元件
Timer timer = new Timer(); //設定定時器
timer.schedule(new TimerTask() {
@Override
public void run() { //彈出軟鍵盤的程式碼
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(edittext, InputMethodManager.RESULT_SHOWN);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,InputMethodManager.HIDE_IMPLICIT_ONLY);
}
}, 300); //設定300毫秒的時長
說明:同樣是在寫Techo Lite時遇到的問題。希望程式可以自動彈出軟鍵盤,可是嘗試了各種辦法都沒有效果。問題的原因似乎是必須等待UI繪製完成後彈出軟鍵盤的程式碼才會有效。於是就採用了上面的方法。需要注意的是,在此之前必須讓edittext獲取焦點,不然也是無效的。
可以透過下面的程式碼來實現Android自動彈出軟鍵盤:
edittext.requestFocus(); //edittext是一個EditText控制元件
Timer timer = new Timer(); //設定定時器
timer.schedule(new TimerTask() {
@Override
public void run() { //彈出軟鍵盤的程式碼
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(edittext, InputMethodManager.RESULT_SHOWN);
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,InputMethodManager.HIDE_IMPLICIT_ONLY);
}
}, 300); //設定300毫秒的時長
說明:同樣是在寫Techo Lite時遇到的問題。希望程式可以自動彈出軟鍵盤,可是嘗試了各種辦法都沒有效果。問題的原因似乎是必須等待UI繪製完成後彈出軟鍵盤的程式碼才會有效。於是就採用了上面的方法。需要注意的是,在此之前必須讓edittext獲取焦點,不然也是無效的。