2016-05-08 2 views
0

Привет, я хочу, чтобы мой EditText занимал всю мою панель инструментов, когда я нажимал на нее, и я хочу, чтобы после того, как пользователь закончил вводить текст, чтобы панель инструментов вернулась к нормальной жизни.EditText на панели инструментов

Вот мой XML-файл для меню

<item android:id="@+id/action_search" 
    android:title="search" 
    android:orderInCategory="100" 
    android:icon="@drawable/search" 
    app:showAsAction="ifRoom" 
    /> 

И вот мой код Java

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()){ 

     case R.id.action_search : 
      search.setHint("Procura"); 
      toolbar.addView(search); 
      toolbar.setBackgroundColor(Color.WHITE); 
      search.setOnEditorActionListener(new EditText.OnEditorActionListener() { 
       @Override 
       public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { 
        if (actionId == EditorInfo.IME_ACTION_SEARCH || 
          actionId == EditorInfo.IME_ACTION_DONE || 
          event.getAction() == KeyEvent.ACTION_DOWN && 
            event.getKeyCode() == KeyEvent.KEYCODE_ENTER) { 
         // the user is done typing. 
         SearchActivity.this.text = search.getText().toString(); 
         return true; 
        } 
        return false; 
       } 
      }); 

      return true; 

     default : return super.onOptionsItemSelected(item); 
    } 
} 

Спасибо заранее.

ответ

0

Посмотрите на эту библиотеку, это все тоже, что вы ищете https://github.com/Mauker1/MaterialSearchView

+0

Я пытался использовать его, но я не могу заставить его работать это не evem открывая панель поиска для меня, чтобы написать что-то – SuperMan19

+0

, пожалуйста, покажите код, который вы использовали, чтобы я мог вам помочь :) –

0

вы могли бы попытаться определить, когда пользователь закрыть softKeyboard, чтобы скрыть или восстановить панель инструментов, проверить этот ответ может быть, вы могли бы получить то, что вы ищете

Detecting when user has dismissed the soft keyboard

1

Я предлагаю вам использовать SearchView, попробуйте этот способ

Gradle

dependencies { 
     compile 'com.lapism:searchview:2.2' 
     } 

XML

<com.lapism.searchview.view.SearchView 
    android:id="@+id/searchView" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" /> 

Java Code

@Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     switch (item.getItemId()) { 
      case R.id.action_search: { 
       mSearchView.show(true/false); // animate, ONLY FOR MENU ITEM 
       return true; 
      } 
      default: 
       return super.onOptionsItemSelected(item); 
     } 
    } 
+0

, что xml находится в файле меню или в главном файле макета? – SuperMan19

+0

он не открывает окно editText на моей панели инструментов – SuperMan19

Смежные вопросы