【问题标题】:Honeycomb ActionBar & Phone AppHoneycomb ActionBar 和电话应用程序
【发布时间】:2011-07-02 10:44:26
【问题描述】:

几周以来我一直在编写我的第一个应用程序,今天我意识到,如果我们想为 Honeycomb 和普通手机开发,我们应该将它们打包为一个应用程序,而不是作为具有不同目标的两个应用程序。

所以我在 Eclipse 中启动了一个新项目,目标是 2.1(SDK 级别 7),并将我的 Java、XML 和其他资源从旧的(面向 Honeycomb 的项目)复制到新的(面向手机 + 平板电脑的)项目中。

一切都很顺利,直到我遇到了 ActionBar 代码的障碍,特别是在我将应用程序图标设置为转到主要活动的地方 - 由于某种原因它不喜欢这样。

我们应该如何为两个平台编写一个应用程序?我认为它就像两个版本的布局和 Java 中的一些小调整一样简单。

【问题讨论】:

    标签: android android-3.0-honeycomb


    【解决方案1】:

    到目前为止,我发现的最佳示例是 Google IO 2011 时间表,可通过http://code.google.com/p/iosched/ 免费获得。该项目是专门为此目的而构建的 - 1 apk 提供了一个适用于手机的应用程序版本和另一个适用于平板电脑的应用程序版本。根据您的应用程序的结构,通过一些调整(主要或次要,取决于您的观点),该应用程序几乎可以为两种设备平台做任何事情。

    【讨论】:

      【解决方案2】:

      ActionBar 最初是在 Android 3.0 中引入的

      如果您希望您的应用运行更多版本,则必须检查 ActionBar 是否可用(然后运行特定代码),如果不可用,则必须提出另一个解决方案(也许你自己的实现)。

      Build.VERSION 可用于确定您的应用在哪个 Android 版本上运行。

      【讨论】:

      【解决方案3】:

      我仔细查看了新的(面向手机 + 平板电脑的)项目,看看是否有任何我遗漏的东西会导致问题。

      原来在 androidmanifest.xml 中我有错误的 targetsdk 和 minsdk 级别。

      我已将它们更改为正确的:

      <uses-sdk 
          android:minSdkVersion="7" 
          android:targetSdkVersion="11" />
      

      此更改解决了该问题。感谢您的帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-10-02
        • 2013-09-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多