android 監控軟鍵盤確定 搜尋 按鈕並賦予點選事件
阿新 • • 發佈:2019-01-09
在android的實踐開發中,為了介面的美觀,往往那些搜尋框並沒有帶搜尋按鈕,而是呼叫了軟鍵盤的搜尋按鈕,完成這次時間
好吧!直接上程式碼!
<EditText
android:id="@+id/my_chat_seach"
android:layout_width="fill_parent"
android:layout_height="23dp"
android:layout_centerVertical="true"
android:layout_marginRight="6dip"
android:layout_toRightOf="@id /my_seach_item_1_button"
android:background="@color/white"
android:gravity="center_vertical"
android:hint="@string/search"
android:imeOptions="actionSearch"
android:singleLine="true"
android:textColor="#8e8787"
android:textSize="13sp" />
xml配置檔案中 最重要的一個屬性是: android:imeOptions=”actionSearch”,從而呼叫軟鍵盤時,回車鍵就會顯示搜尋二字。
同時在androidMainfest.xml檔案中在此Activity中寫入 android:windowSoftInputMode=”adjustPan”,可以防止軟鍵盤會把原來的介面擠上去的問題。
那麼在該activity中,如何操作呢?
seachEditText = (EditText) findViewById(R.id.my_chat_seach);
watchSearch();
然後
/**
* @方法說明:監控軟鍵盤的的搜尋按鈕
* @方法名稱:watchSearch
* @返回值:void
*/
public void watchSearch() {
seachEditText.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId,
KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_SEARCH) {
// 先隱藏鍵盤
((InputMethodManager) seachEditText.getContext()
.getSystemService(Context.INPUT_METHOD_SERVICE))
.hideSoftInputFromWindow(ChatFriendsGroudSeach.this
.getCurrentFocus().getWindowToken(),
InputMethodManager.HIDE_NOT_ALWAYS);
// 搜尋,進行自己要的操作...
seachList(viewIndex);//這裡是我要做的操作!
return true;
}
return false;
}
});
}
好的!完成!