gpt4 book ai didi

android - 如何在 Searchview 中隐藏后退按钮

转载 作者:行者123 更新时间:2023-11-29 14:31:14 25 4
gpt4 key购买 nike

有谁知道如何在 AppCompat v21 searchview 中隐藏后退按钮? (由绿线勾勒)

searchview back button

我搜索了很多,但找不到任何有用的东西。

menu_main.xml:

<item android:id="@+id/search"
android:title="@string/search_title"
app:showAsAction="always|collapseActionView"
android:icon="@drawable/abc_ic_search_api_mtrl_alpha"
android:orderInCategory="300"
app:actionViewClass="android.support.v7.widget.SearchView" />

<item android:id="@+id/action_home"
android:title="Home"
android:icon="@drawable/v_home"
app:showAsAction="always"
android:orderInCategory="180"/>

<item android:id="@+id/action_favorites"
android:title="Favorites"
android:icon="@drawable/v_favorites"
app:showAsAction="always" />

主要 Activity :

 @Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu_main, menu);

firstMenu = menu;


searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);

MenuItem searchItem = menu.findItem(R.id.search);
SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchItem);
searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
searchView.setSubmitButtonEnabled(true);
searchView.setActivated(true);


searchView.setOnSearchClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
menuItemsVisibility(false);
}
});
searchView.setOnCloseListener(new SearchView.OnCloseListener() {
@Override
public boolean onClose() {
menuItemsVisibility(true);
return false;
}
});

return true;
}

@Override
public void onBackPressed() {
menuItemsVisibility(true);
super.onBackPressed();
}

// setting visibility of menu items on search
private void menuItemsVisibility(boolean visibility) {

MenuItem homeItem = firstMenu.findItem(R.id.action_home);
MenuItem favoriteItem = firstMenu.findItem(R.id.action_favorites);
MenuItem otItem = firstMenu.findItem(R.id.action_ot);
MenuItem ntItem = firstMenu.findItem(R.id.action_nt);
homeItem.setVisible(visibility);
favoriteItem.setVisible(visibility);
otItem.setVisible(visibility);
ntItem.setVisible(visibility);
}

注意:行为 showAsAction:Always 和使用方法 menuItemsVisibility() 来调整工具栏项的可见性是有意的。

另一个注意事项:MainActivity 扩展了 ActionBarActivity,它还实现了 ObservableScrollView 库中的 ObservableScrollViewCallbacks。

最佳答案

将 app:showAsAction="always|collapseActionView"更改为 app:showAsAction="always"

关于android - 如何在 Searchview 中隐藏后退按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29294231/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com