这是我第一次在 Android 中使用 Action Bar。我看到一个问题,溢出菜单都显示在 ActionBar 和屏幕底部。
据我了解,底部设置栏应仅在应用程序使用旧设置操作时显示。我以为我已经遵循了设置操作栏所需的一切并正确溢出以使用新的 android API。作为参考,我正在 HTC One 上进行调试。
起初我认为这可能与我使用 ActionBarSherlock 的事实有关,但我删除了对库的引用并使用了标准的 Android 库类——这没有帮助。
我觉得我错过了一些小事。任何帮助,将不胜感激。
我的活动有以下代码:
public class MainActivity extends SherlockActivity
{
static final LatLng POINT = new LatLng(44.52515, -89.571533);
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map))
.getMap();
map.moveCamera(CameraUpdateFactory.newLatLngZoom(POINT, 15));
// Zoom in, animating the camera.
map.animateCamera(CameraUpdateFactory.zoomTo(10), 2000, null);
}
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
getSupportMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch(item.getItemId())
{
case R.id.action_routes :
// do something here
break;
case R.id.action_settings:
// do something here
break;
}
return true;
}
}
和我的 activity_main.xml 菜单:
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/action_routes"
android:orderInCategory="100"
android:showAsAction="always"
android:icon="@drawable/ic_route"
android:title="@string/action_routes" />
<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:showAsAction="never"
android:title="@string/action_settings"/>
</menu>