點擊回車搜索

今天發現一個好玩的,也是經常使用的android

輸入框輸入完後按回車搜索,而且隱藏鍵盤。ide

 

第一步:xmlthis

<EditText
android:id="@+id/city"
android:imeOptions="actionSearch"
android:singleLine="true"
android:layout_width="match_parent"
android:layout_height="wrap_content" />

<Button
android:id="@+id/search"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:text="搜索" />

 

 第二步,重寫回車鍵spa

edit = (EditText) findViewById(R.id.edit);
search = (Button) findViewById(R.id.search);

city.setOnKeyListener(new View.OnKeyListener() {
            @Override
            public boolean onKey(View v, int keyCode, KeyEvent event) {
                if (keyCode == KeyEvent.KEYCODE_ENTER) {//重寫回車鍵
 search(); } return false;//這裏很好玩,你把false改爲true試試,你會發現其餘按鍵會被攔截
            }
        });
getWeather.setOnClickListener(new View.OnClickListener() {
     @Override
     public void onClick(View v) {
         search();
     }
 });

 

 第三步,隱藏小鍵盤code

//隱藏鍵盤
public class HideKeyBoard {
    //注意,這裏不是構造方法
    public static void HideKeyBoard(Activity activity){
        InputMethodManager inputMethodManager = (InputMethodManager)
                activity.getSystemService(Context.INPUT_METHOD_SERVICE);
        inputMethodManager.hideSoftInputFromWindow(activity.getCurrentFocus()
                .getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
    }
}

 

第四步,在search()中使用xml

public void search(){
        //隱藏鍵盤
        HideKeyBoard.HideKeyBoard(this);      //....其餘搜索內容...
}    
相關文章
相關標籤/搜索