我的菜单项有问题。
我的菜单中有一个搜索视图,我在OnMenuItemClickListener
的项目上设置onPrepareOptionsMenu
。
和我的菜单xml:showAsAction属性设置为"始终"
然而,如果我点击搜索图标,没有任何事情发生,吐司就没有出现。
奇怪的是,如果我设置showAsAction ="总是| collapseActionView",如果能够工作,但搜索图标已经消失并被"搜索"文本。
它起作用,显示吐司。
但图标消失了
********************编辑************************** **************
答案 0 :(得分:2)
您的菜单使用了错误的语法。请用此替换菜单inflater / handler代码。
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.yourActivity_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.search) {
//Handle the onClick with Toast over here.
//IF you have multiple options then replace if with a switch() statement
return true;
}
return super.onOptionsItemSelected(item);
}
就图标而言,您已通过添加android:icon =“@ drawable / YOU_ICON_HERE”
在xml文件中指定了icon属性编辑:看看这个http://developer.android.com/training/search/setup.html你应该保留android:showAsAction =“collapseActionView | ifRoom”,这样才能工作。您现在唯一需要做的更改是将一个android:icon属性添加到xml
<item android:id="@+id/search"
android:title="@string/search_title"
android:icon="@drawable/ic_search"
android:showAsAction="collapseActionView|ifRoom"
android:actionViewClass="android.widget.SearchView" />
或android.widget.v7支持,具体取决于您希望支持的Android版本