我正在使用AndroidStudio构建应用程序 我的菜单有问题。
这是我的菜单文件.xml:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:title="@string/action_settings"/>
<item
android:id="@+id/action_logout"
android:orderInCategory="100"
android:title="Logout"/>
</menu>
这是我可以从预览中看到的:
在我的活动主编中,我有这个代码来创建这个菜单:
public class MainActivity extends Activity {
public MyDatabase db;
public ProgressDialog dialog;
public String url="";
private static final Intent SCAN_INTENT = new Intent("com.google.zxing.client.android.SCAN");
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@SuppressLint("RestrictedApi")
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.care_home, menu);
if (menu != null) {
}
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
return super.onOptionsItemSelected(item);
}
}
但如果我尝试启动我的应用程序,我可以看到:
如您所见,我无法看到应用程序图标,但我看不到选项菜单。
我怎么能这样做?
答案 0 :(得分:0)
首先使用AppCompatActivity
而不是Activity
扩展您的活动,例如:
public class MainActivity extends AppCompatActivity{
然后返回return (super.onCreateOptionsMenu(menu));
而不是true
,如:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.care_home, menu);
if (menu != null) {
}
return (super.onCreateOptionsMenu(menu));
}
答案 1 :(得分:0)
您正在扩展活动,这就是您无法看到工具栏或操作的原因。
public class MainActivity extends Activity {}
改为使用:
public class MainActivity extends AppCompatActivity{
有关更多信息,请阅读有关appBars的android文档: Android Docs
答案 2 :(得分:0)
您可以使用较低版本的Android设备按设备的硬件菜单按钮,它会显示您的菜单。我的建议是至少在上面的果冻豆上进行测试。
答案 3 :(得分:0)
扩展 AppCompatActivity 而非活动。并创建如下菜单:
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.care_home, menu);
return return super.onCreateOptionsMenu(menu);;
}
和care_home.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:title="@string/action_settings"
app:showAsAction="always" />
<item
android:id="@+id/action_logout"
android:orderInCategory="100"
android:title="Logout"
app:showAsAction="always" />
要设置 AppBar ,您可以阅读Here。