Android 隱藏 顯示軟鍵盤方法

2021-10-04 10:34:06 字數 1776 閱讀 1200

隱藏軟鍵盤的終極方法:

public class softkeyboardutil

}/**

* 隱藏軟鍵盤(可用於activity,fragment)

*/public

static

void

hidesoftkeyboard

(context context, list viewlist)

}}那 softkeyboardutil 第二個方法的 list viewlist 引數是什麼, viewlist 中需要放的是當前介面所有觸發軟鍵盤彈出的控制項。 比如乙個登陸介面, 有乙個賬號輸入框和乙個密碼輸入框, 需要隱藏鍵盤的時候, 就將兩個輸入框物件放在 viewlist 中, 作為引數傳到 hidesoftkeyboard 方法中即可。

如下方法會彈出的隱藏,隱藏的彈出

public

static

void

hidekeyboard()

android 手動顯示和隱藏軟鍵盤

1、方法一(如果輸入法在視窗上已經顯示,則隱藏,反之則顯示)

inputmethodmanager imm =

(inputmethodmanager)

getsystemservice

(context.input_method_service)

; imm.

togglesoftinput(0

, inputmethodmanager.hide_not_always)

;

2、方法二(view為接受軟鍵盤輸入的檢視,show_forced表示強制顯示)

inputmethodmanager imm =

(inputmethodmanager)

getsystemservice

(context.input_method_service)

; imm.

showsoftinput

(view,inputmethodmanager.show_forced)

;imm.

hidesoftinputfromwindow

(view.

getwindowtoken()

,0);

//強制隱藏鍵盤

3、呼叫隱藏系統預設的輸入法

(

(inputmethodmanager)

getsystemservice

(context.input_method_service)).

hidesoftinputfromwindow

(widgetsearchactivity.

this

.getcurrentfocus()

.getwindowtoken()

, inputmethodmanager.hide_not_always)

;//(widgetsearchactivity是當前的activity)

4、獲取輸入法開啟的狀態

inputmethodmanager imm =

(inputmethodmanager)

getsystemservice

(context.input_method_service)

; boolean isopen = imm.

isactive()

;//isopen若返回true,則表示輸入法開啟

Android 手動顯示和隱藏軟鍵盤

本人用過第乙個,第二個靠譜 1 方法一 如果輸入法在視窗上已經顯示,則隱藏,反之則顯示 inputmethodmanager imm inputmethodmanager getsystemservice context.input method service imm.togglesoftinpu...

Android 手動顯示和隱藏軟鍵盤

1 如果輸入法在視窗上已經顯示,則隱藏,反之則顯示 inputmethodmanager imm inputmethodmanager getsystemservice context.input method service imm.togglesoftinput 0,inputmethodman...

Android 手動顯示和隱藏軟鍵盤

1 方法一 如果輸入法在視窗上已經顯示,則隱藏,反之則顯示 inputmethodmanager imm inputmethodmanager getsystemservice context.input method service imm.togglesoftinput 0 inputmetho...