Worklight选项菜单

3
我正在尝试在WL应用程序中实现optionsMenu,在Android上进行测试(我的项目设置中的sdk级别为10,运行时为Android 4.0.3)。但是没有菜单可用。我通过HTC USB通道连接到本地服务器,因此必须处理worklight设置以更改网络地址。
我已经阅读了IBM文档(WL入门和infocenter),但没有完整的解释/代码。
以下是我的问题/问题:
1)如何处理application-descriptor.xml中的worklight设置(我需要将其作为附加的optionsMenu项目访问,以进行本地测试):
<android version="1.0">
    <worklightSettings include="true"/>

2) 我应该在哪里初始化optionsMenu? (我在我的html页面的document.ready jquery函数中调用一个函数)

3) 我已经把图标(xxxx.png)放到Android/native/res/drawable目录下,这样就足够了吗?

4) 在Android SDK 10级别中有特定的问题吗?

1个回答

1
自从 API 等级10 开始,Google开始引入新的UI控件。其中之一是操作栏(Action Bar),它是选项菜单的继承者。Worklight 不完全支持操作栏。
作为解决方法,在 AndroidManifest.xml 中将 minSdkValue 更改为 8,这样会恢复“常规” OptionsMenu。我们希望在未来的版本中更好地处理这种情况。
  1. 您已正确声明。
  2. 您可以在 wlCommonInit() 中进行初始化(位于 yourProject\apps\yourApp\common\js\appName.js)
  3. 是的。请确保它们按DPI(文件夹)存储在正确的分辨率下。然而,我会把它们放在 nativeResources\res\<dpiFolder> 中,因为如果您意外删除了本机文件夹,这些图像也会消失。通过将它们放在 nativeResources 中,它们将在构建时被复制到本机文件夹中。
  4. 是的,见上面的回答。

嗨Idan,在我的Worklight应用程序中,我想关闭Worklight设置选项。(在application-descriptor.xml中设置<worklightSettings include="false"/>)我已将minSdkValue更改为8,并通过WL.OptionsMenu API添加了三个项目。 如果 worklightSettings = true,则可以显示4个选项(我添加的3个和一个是Worklight Settings)。 但是,如果 worklightSettings = false,则不会显示任何选项。 你能帮忙吗?谢谢。 - red23jordan
@red23jordan,我假设你已经对OptionsMenu进行了.init()操作? - Idan Adar
嗨,Idan,问题已经解决了。供您参考,我在AndroidManifest.xml中定义了minSdkVersion和targetSdkVersion。一旦我将<uses-sdk android:minSdkVersion....>这行代码移动到<application>之前,问题就解决了。 - red23jordan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接