1>軟鍵盤(pán)的狀態(tài)——隱藏或顯示。
一:自動(dòng)彈出軟鍵盤(pán)
二:軟鍵盤(pán)
Activity中設置:
Android:windowSoftInputMode="stateUnspecified",默認設置:軟鍵盤(pán)的狀態(tài)(隱藏或可見(jiàn))沒(méi)有被指定。系統將選擇一個(gè)合適的狀態(tài)或依賴(lài)于主題的設置。
"stateUnchanged", 軟鍵盤(pán)被保持上次的狀態(tài)。
"stateHidden", 當用戶(hù)選擇該Activity時(shí),軟鍵盤(pán)被隱藏。
"stateAlwaysHidden", 軟鍵盤(pán)總是被隱藏的。 "stateVisible",. 軟鍵盤(pán)是可見(jiàn)的。 "stateAlwaysVisible", 當用戶(hù)選擇這個(gè)Activity時(shí),軟鍵盤(pán)是可見(jiàn)的。
"adjustUnspecified", . 它不被指定是否該Activity主窗口調整大小以便留出軟鍵盤(pán)的空間, 或是否窗口上的內容得到屏幕上當前的焦點(diǎn)是可見(jiàn)的。系統將自動(dòng)選擇這些模式中一種主要依賴(lài)于是否窗口的內容有任何布局視圖能夠滾動(dòng)他們的內容。 如果有這樣的一個(gè)視圖,這個(gè)窗口將調整大小,這樣的假設可以使滾動(dòng)窗口的內容在一個(gè)較小的區域中可見(jiàn)的。這個(gè)是主窗口默認的行為設置。也就是說(shuō), 系統自動(dòng)決定是采用平移模式還是壓縮模式,決定因素在于內容是否可以滾動(dòng)。 "adjustResize", (壓縮模式) 當軟鍵盤(pán)彈出時(shí),要對主窗口調整屏幕的大小以便留出軟鍵盤(pán)的空間。 "adjustPan"] > (平移模式:當輸入框不會(huì )被遮擋時(shí),該模式?jīng)]有對布局進(jìn)行調整,然而當輸入框將要被遮擋時(shí), 窗口就會(huì )進(jìn)行平移。也就是說(shuō),該模式始終是保持輸入框為可見(jiàn)。
三:隱藏軟鍵盤(pán):
EditText edit=(EditText)findViewById(R.id.edit);
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(edit.getWindowToken(),0);
4.EditText默認不彈出軟件鍵盤(pán)
5.EditText始終不彈出軟件鍵盤(pán)
方法一:
在AndroidMainfest.xml中選擇哪個(gè)activity,設置windowSoftInputMode屬性為adjustUnspecified|stateHidden
例如:<>
<> <>
方法二:
讓EditText失去焦點(diǎn),使用EditText的clearFocus方法
例如:EditText edit=(EditText)findViewById(R.id.edit);
edit.clearFocus();
方法三:
強制隱藏Android輸入法窗口
例如:EditText edit=(EditText)findViewById(R.id.edit);
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(edit.getWindowToken(),0);
例:EditText edit=(EditText)findViewById(R.id.edit);
edit.setInputType(InputType.TYPE_NULL);
聯(lián)系客服