2016-06-20 3 views
2

Я использую MaterialSearchView (https://github.com/MiguelCatalan/MaterialSearchView), библиотеку для реализации SearchView в подходе к материальному дизайну.MaterialSearchView не фокусируется на запуске - Android

Он помещает поиск в панель инструментов. Однако не знаю, как сфокусироваться на поиске, так что, когда начинается действие, поиск сразу же становится фокусом и появляется виртуальная клавиатура. Он фокусируется, только если я нажму на значок поиска.

MaterialSearchView searchView; 
     searchView = MaterialSearchView)getActivity().findViewById(R.id.search_view); 
searchView.requestFocus(); 

не работает.

Я пробовал его из фрагмента и из активности.

Благодаря

+0

Вы хотите, чтобы поиск показывался, когда начинается действие? Если вы проверите библиотеку, вы найдете функцию 'showSearch()', чтобы открыть поиск. –

+0

Когда вы вызываете фокус запроса на просмотр, фокусный и focusableInTouchMode представления должен быть установлен в true в xml. Попробуйте настроить focusable и focusableInTouchMode true в xml. –

ответ

0

Создание опорного меню объекта:

private Menu menu; 
@Override 
public boolean onCreateOptionsMenu(final Menu menu) { 
    this.menu = menu; 
//rest of your code here ... 
} 

, а затем onResume() вашей деятельности вы можете программно имитируют элемент нажмите так:

onOptionsItemSelected(menu.findItem(R.id.searhView)); 
+0

Я получаю вывод нулевого указателя на onResume(), это меню имеет значение null. – RJB

1

Я хотел бы предложить вам для использования my implementation of MaterialSearchView, его можно открыть, не нажимая на панель инструментов/панель действий.

Например, в вашем Activity вы можете сделать следующее:

// Activity: 
MaterialSearchView searchView = (MaterialSearchView) findViewById(R.id.search_view); 

Затем, в любом месте вашего кода, вы можете открыть окно по телефону:

searchView.openSearch(); 

и закрыть его по телефону :

searchView.closeSearch(); 

Таким образом, вы могли бы поставить openSearch() внутри вашейНапример,. Таким образом, вы всегда откроете окно поиска, когда начнется ваш Activity. Вы также можете вызвать этот метод из любого Button на своем Activity.

P.S .: Он также имеет поддержку поиска и поиска.

Бонус: Имейте gif (Это показано на португальском языке, но оно также поддерживает английский, поэтому не беспокойтесь).

Material Search View

Для получения дополнительной информации о том, как настроить его, и видеть случаи использования, вы можете check the docs.

+0

Добро пожаловать! Если вам понравилось, и если это помогло, не забудьте отметить ответ как принято :) – Mauker

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