重寫activity的dispatchkeyevent(keyevent event)方法,在其中監聽keyeventkey.keycode_enter鍵(右下角確定鍵),當此鍵按下的時候,隱藏輸入法軟鍵盤,設定edittext內容和載入webview內容。
@override重寫dispatchkeyevent(keyevent event)的方法感覺有點用牛刀的感覺,因為我們非常可能在這個方法中進行其他任務,所以我們可以使用onkeylistener的方法來監聽軟鍵盤按鍵。public boolean dispatchkeyevent(keyevent event
)
edittext.settext(
"success");
webview.loadurl(url);
return
true
; }
return super.dispatchkeyevent(event
); }
private onkeylistener onkeylistener = newonkeylistener()
edittext.settext(
"success");
webview.loadurl(url);
return
true
; }
return
false
; }
};
edittext.setonkeylistener(onkeylistener);第三種方法我認為可以幫助程式設計師更精確的判斷右下角按鍵情況,以便應對更加複雜的情況。它可以幫助程式設計師依據當前郵件下為「go」,「done」,「search」鍵的情況下做出更細分的操作。
edittext.setoneditoractionlistener(newtextview.oneditoractionlistener()
edittext.settext(
"success");
webview.loadurl(url);
return
true
; }
return
false
; }
});
android:id="actionnone : 回車鍵,按下後游標到下一行@+id/edittext
"android:layout_width="
match_parent
"android:layout_height="
wrap_content
"android:singleline="
true
"android:imeoptions="
actionsearch
"/>
actiongo : go,
actionsearch : 放大鏡
actionsend : send
actionnext : next
actiondone : done,確定/完成,隱藏軟鍵盤,即使不是最後乙個文字輸入框
我在寫這個demo的時候,發現了webview的乙個問題,就是直接使用webview.load(url)方法會在手機上面彈出系統瀏覽器來訪問url鏈結,而不是我們設定的webview,我找到的解決辦法就是使用webview.setwebviewclient(....)的方法來確保url會在activity的webview上面載入。
Android 軟鍵盤監聽(kotlin)
class softkeyboardlistener activity activity 根檢視顯示高度沒有變化,可以看作軟鍵盤顯示 隱藏狀態沒有改變 if rootviewvisibleheight visibleheight 根檢視顯示高度變小超過200,可以看作軟鍵盤顯示了 if rootvi...
Android App三種監聽軟鍵盤按鍵
function 1 重寫activity的dispatchkeyevent keyevent event 方法,在其中監聽keyeventkey.keycode enter鍵 右下角確定鍵 當此鍵按下的時候,隱藏輸入法軟鍵盤,設定edittext內容和載入webview內容。override pu...
Android App監聽軟鍵盤按鍵的三種方式
重寫activity的dispatchkeyevent keyevent event 方法,在其中監聽keyeventkey.keycode enter鍵 右下角確定鍵 當此鍵按下的時候,隱藏輸入法軟鍵盤,設定edittext內容和載入webview內容。1 2 3 4 5 6 7 8 9 10 1...