开发者

Using qnx.ui.picker.Picker in mobile Flex Hero project for Blackberry Playbook

there is a Picker example for usage in an ActionScript project. It works well in simulator.

But how do you use that component in a Mobile Flex Project (with Burrito Flash Builder)?

How do you add a qnx.ui.picker.Picker to a spark.components.View?

开发者_StackOverflow中文版The latter seems to expect a mx.core.UIComponent, but the former is a qnx.ui.core.UIComponent.

The ActionScript project I've mentioned above works ok, because the Picker is added to the Sprite. But adding it to a View in a Mobile Flex project fails for me.

Thank you! Alex

UPDATE:

I've found this page today: http://corlan.org/2011/03/28/creating-playbook-apps-with-flex-and-qnx-ui-components/

And also I've found out that the QNX AIR components work on Android as well, wonder if it is legal to use them there? Nothing is mentioned in Playbook SDK Legal Notice.


As I understand, right now we can't use UI components in Flex Mobile project. You can go to: Project - Properties - Flex Build Packaging - BlackBerry Tablet OS and check Include BlackBerry tablet OS libraries in build path, but, you'll get an error:

"Design mode could not load qnx-air.swc. It may be incompatible with this SDK, or invalid. (DesignAssetLoader.CompleteTimeout)"

BlackBerry guys says that it'll be fixed in future release. So right now you can use QNX components only in ActionScript.


First you need to add the swc from the SDK into your Flex Project:

Right click the Project and select Properties, under Flex Build Path, add a SWC and browse to the SDK. ...\Adobe Flash Builder Burrito\sdks\blackberry-tablet-sdk-0.9.3\frameworks\libs\qnx-screen\qnx-screen.swc

Once you have the swc in the project you can create instances programmatically in the script tag, eg:

import qnx.ui.picker.Picker;
var pick:Picker = new Picker();
var arr:Array = [{label: "day", data:0}, {label: "week", data:1}, {label: "month", data:2}];
pick.dataProvider = new DataProvider([new DataProvider(arr)]);
pick.selectedIndices = [0];
addChild(pick);

You may need to add a container to your view first, eg add a mx:UIComponent element and then add the picker to that, eg

<mx:UIComponent id="pickerContainer"/>

pickerContainer.addChild(pick);
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜