0

应用程序必须在 2.3 和 4.0 上运行。在活动中有选项菜单。在 2.3 - 设备上的所有 ok 显示菜单按钮。在 4.0 上 - 没有菜单按钮,无法显示选项菜单。在清单中

android:minSdkVersion="8"
android:targetSdkVersion="15" />

活动

public boolean onCreateOptionsMenu(Menu menu) {
  getMenuInflater().inflate(R.menu.activity_auth, menu);
  return true;
}

问:如何编写应用程序以在 2.3 和 4.0 上运行,并使用选项菜单?

4

3 回答 3

3

如何编写在 2.3 和 4.0 上运行的应用程序并使用选项菜单?

除了您已经完成的操作之外,您还需要在 API 级别 11+ 上有一个操作栏,它将具有一个三点提示来显示溢出菜单(您的所有选项菜单项都将转到您尚未执行的操作酒吧本身)。给定现有的 android:targetSdkVersion="15",默认情况下应该有一个操作栏。

但是,对于具有屏幕外菜单按钮的设备,您不会在操作栏中看到三点提示。相反,用户需要按下 MENU 按钮来显示您的菜单,就像他们在 Android 2.3 上所做的那样。

于 2012-11-23T17:49:46.760 回答
0

将旧菜单按钮降低targetSdk到 10(或更低)以重新出现。

我强烈建议你阅读这篇文章说再见菜单按钮,以了解背后的所有逻辑......

于 2012-11-23T17:48:06.050 回答
0

使应用程序与旧版本兼容是一个巨大的痛苦。我建议您使用一个库。杰克·沃顿 (Jake Wharton) 写的该死的好东西叫做ActionBarSherlock您可以在链接中找到更多信息

到目前为止,我自己在两个应用程序中使用过。它允许您ActionBar在 2.2 等旧版本中使用(在 3.0 中引入)。它扩展了android support-library 库中提供了主题,如果将您的应用程序简单地设置为外观和感觉方面的 4.0。

于 2012-11-23T17:59:24.120 回答