У меня есть меню в моей панели действий с двумя элементами. После открытия поиска по-прежнему отображается «кусок пера». Как я могу скрыть это?Панель действий - скрытие всех пунктов меню, кроме поля поиска
menu.xml:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/search"
android:title="@string/search"
android:icon="@drawable/ic_search"
app:actionViewClass="android.widget.SearchView"
app:showAsAction="ifRoom|withText" />
<item
android:id="@+id/edit"
android:icon="@drawable/ic_edit"
android:title="@string/edit"
app:showAsAction="ifRoom|withText" />
</menu>
ActionBar с видом поиска открыл:
Я попытался также:
app:showAsAction="collapseActionView|ifRoom"
Но в этом случай у меня есть:
Я хочу, чтобы получить то же самое, что представлено на втором рисунке. Но значок редактирования должен быть скрытым или в конечном итоге отображаться, но в целом.
EDIT
Based @Ahmad Alsanie ответа я написал н так:
SearchView view = (SearchView) menu.findItem(R.id.search).getActionView();
view.setOnQueryTextFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus)
menu.findItem(R.id.edit).setVisible(false);
});
И это работает, но как я могу восстановить редактирования значка после закрытия вида поиска? Я пробовал setOnCloseListener
, но безуспешно.
взгляд на эту ссылку http://www.edumobile.org/android/action-bar-search-view/ –
Thx, я пробовал, но это то же самое, что у меня на третьей картинке (только программно, без xml) – Bakus123
извините, я попробовал :( –