我正在学习Android开发。到目前为止,我已经创建了一个基本的应用程序,我想显示一个OptionMenu。我已经按照教程。 该菜单未出现在我的手机上。也许我忘记了什么?
我看过这篇文章: Option Menu does not appear in Android 但似乎我的问题不同了。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setHasOptionsMenu(true);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.action_refresh) {
FetchWeatherTask weatherTask = new FetchWeatherTask();
weatherTask.execute();
return true;
}
return super.onOptionsItemSelected(item);
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.forecastfragment, menu);
}
<?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/action_refresh"
android:title="@string/action_refresh"
app:showAsAction="never" />
</menu>
我花了好几个小时。从头开始重写代码2次,但问题仍然存在。 一切都很好,除了菜单没有出现。 有什么问题?
答案 0 :(得分:2)
并将app:showAsAction = never
更改为app:showAsAction = ifRoom|withText
,添加withText
以允许用户长按项目并显示项目的目的,如果您的项目放入溢出,将显示文本。
答案 1 :(得分:2)
在菜单xml chnge的最后一行到
应用程式:showAsAction =&#34; ifRoom&#34;