現象:打開瀏覽器,鼠標點擊地址欄,彈出輸入框和軟鍵盤(Latin輸入法),當鼠標移動時,輸入框和軟鍵盤會消失
解決:
在瀏覽器地址欄輸入網址時,會有個AutoCompleteTextView的列表。
持續輸入時,列表有時會消失。這時,移動鼠標會導致搜索欄消失,從而導致輸入法關閉。
持續輸入時,列表有時會消失。這時,移動鼠標會導致搜索欄消失,從而導致輸入法關閉。
這裏做了個workaround:
輸入時,強制AutoCompleteTextView的列表一直存在,這樣搜索欄不消失,輸入法也不會關閉。
輸入時,強制AutoCompleteTextView的列表一直存在,這樣搜索欄不消失,輸入法也不會關閉。
AutoCompleteTextView.java
@@ -1022,7 +1022,10 @@ public class
AutoCompleteTextView extends EditText implements Filter.FilterListe
showDropDown();
}
} else if (!mDropDownAlwaysVisible) {
dismissDropDown();
if (hasFocus()
&& hasWindowFocus()) {
showDropDown();
}
}
}
在framework/base/core/java/android/widget/AutoCompleteTextView.java中1022行左右修改以上代碼(添加if判斷),即可解決。