我正在使用导航抽屉,我在所有片段中都有操作栏,我正在尝试在操作栏中添加搜索图标但是它没有出现,应用程序没有崩溃但是在我的操作栏中看不到图标,以下是我的代码可以任何一个帮助
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:showAsAction="never"
android:icon="@drawable/searchs"
android:title="@string/action_settings"/>
</menu>
MainActivity
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
答案 0 :(得分:1)
我认为这是因为:
android:showAsAction="never"
而不是使用:
android:showAsAction="ifRoom"
答案 1 :(得分:1)
ShowAsAction必须始终或ifRoom。
always makes sure it is always present.
ifRoom pushes the menuitem into overflow menu if space is not available.
如果您打算将搜索功能附加到您的活动,则应考虑使用SearchView widget
而不是使用和图标并处理点击它。
答案 2 :(得分:1)
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_contact, menu);
MainActivityAfterLogin.menu = menu;
MenuItem searchItem = menu.findItem(R.id.menu_search);
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
SearchView searchView = (SearchView) MenuItemCompat
.getActionView(searchItem);
searchView.setSearchableInfo(searchManager
.getSearchableInfo(getComponentName()));
searchView.setOnQueryTextListener(new OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String text) {
return false;
}
@Override
public boolean onQueryTextChange(String text) {
return false;
}
});
return true;
}
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context="${relativePackage}.${activityClass}" >
<item
android:id="@+id/menu_search"
android:title="@string/action_search"
app:actionViewClass="android.support.v7.widget.SearchView"
app:showAsAction="always"/>
</menu>
add this in manifest
<activity
android:name="**mainactivity**"
android:label="@string/title_activity_invited_person_list" >
<meta-data
android:name="android.app.default_searchable"
android:value="**result activity**" />
</activity>
<activity
android:name="com.w3nuts.rsvp.main.SearchResultActivity"
android:label="@string/title_activity_search_result" >
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data
android:name="android.app.searchable"
android:resource="@xml/searchable" />
</activity>
&#13;