How to implement search widget in Action Bar Sherlock?

前端 未结 3 1134
心在旅途
心在旅途 2020-12-22 19:16

I tried to get Search box to work on Action Bar Sherlock.

This is my PreLocationActivity:

    @ContentView(R.layout.search)
    public c         


        
3条回答
  •  春和景丽
    2020-12-22 20:12

    private EditText search;
    
    public boolean onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu)
    {
        menu.add(0, 1, 1, R.string.menu_search).setIcon(R.drawable.ic_action_search).setActionView(R.layout.action_search).setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
        return super.onCreateOptionsMenu(menu);
    }
    
    @Override
    public boolean onOptionsItemSelected(com.actionbarsherlock.view.MenuItem item)
    {
        switch (item.getItemId())
        {
            case 1:
            search = (EditText) item.getActionView();
            search.addTextChangedListener(filterTextWatcher);
            search.requestFocus();
            InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
            imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, 0);
        }
    }
    
    private TextWatcher filterTextWatcher = new TextWatcher()
    {
        public void afterTextChanged(Editable s)
        {
        }
    
        public void beforeTextChanged(CharSequence s, int start, int count, int after)
        {
        }
    
        public void onTextChanged(CharSequence s, int start, int before, int count)
        {
            // your search logic here
        }
    };
    

提交回复
热议问题