如果带有操作栏的应用程序在平板电脑上运行 - 右上角有菜单按钮。但是在智能手机上这个按钮不显示,因为设备有一个硬件菜单按钮,我想。我需要在我的代码中实现类似的行为以仅在平板电脑上显示我的自定义菜单按钮,而不在智能手机上显示它?是真的?我不想使用操作栏
谢谢
如果带有操作栏的应用程序在平板电脑上运行 - 右上角有菜单按钮。但是在智能手机上这个按钮不显示,因为设备有一个硬件菜单按钮,我想。我需要在我的代码中实现类似的行为以仅在平板电脑上显示我的自定义菜单按钮,而不在智能手机上显示它?是真的?我不想使用操作栏
谢谢
您可以检查设备是平板电脑还是智能手机,并且仅当设备是平板电脑时才膨胀选项菜单。
假设您有一个isTablet()
在设备是平板电脑时返回 true 的方法。然后,仅当返回 true时,您才需要覆盖onCreateOptionMenu()
并膨胀菜单。isTablet()
@Override
public boolean onCreateOptionsMenu(Menu menu) {
if(isTablet()){
menuInflater.inflate(R.menu.menu_tablet, menu);
return super.onCreateOptionsMenu(menu);
}else{
// do nothing
return true
}
}
如何确定设备是平板还是手机,你需要挖掘这篇文章:http: //developer.android.com/guide/practices/screens_support.html