Adobe Air - Starling / Features |控件和设备模拟器

时间:2015-06-25 08:59:04

标签: actionscript-3 air starling-framework

我在这里几乎没有问题,关于使用Starling和羽毛在Adobe Air中创建应用程序。

我创建了一个非常简单的应用程序,它具有 Feathers list controller ,并为其dataProvider提供静态数据。根据代码,它应该可以正常工作,但我面临三个主要问题。

1:触摸/单击位置

我正在使用:

list.addEventListener( Event.CHANGE, list_changeHandler );

现在的问题是,点击坐标不正确。点击第3项触发第4项,触发第3项,第2项需要点击它的中途等。

2:没有,没有主题

我正在使用自定义主题,附带教程。如果我不使用主题,我无法以某种方式在屏幕上看到任何内容。

3:分辨率(设备模拟器)问题

虽然有问题,但它适用于主题,但我的应用程序不适合每个设备模拟器的分辨率。它的,iPad或iPhone 4或任何Android模拟器。

此外,任何人都可以在starling类中解释, Context3D渲染模式的意义和用途。

感谢任何帮助:

提前致谢 Waqar Iqbal

2 个答案:

答案 0 :(得分:0)

Starling是Stage3D框架,使用Context3D直接在图形卡上显示内容。 Starling显示的所有内容始终位于常规显示列表下。 Feather是一个基于Starling的组件框架。

  1. Stage3D无法处理任何鼠标操作,因此Starling和Feather模拟所有鼠标事件(这些鼠标事件从未真正发生在任何地方,它们是通过计算舞台上的鼠标位置创建的)

  2. 不确定,从未使用羽毛

  3. Starling无法处理屏幕密度和dpi计算,如果您希望自己的应用适合任何需要自己处理的屏幕。

答案 1 :(得分:0)

我认为你应该仔细看一下这个例子。如果你想使用任何羽毛组件,你必须使用羽毛主题或自定义主题。

如果您使用羽毛主题,则需要提供主题路径,然后在使用任何组件之前初始化该主题。然后使用组件任何where.without主题,你将看不到任何东西。

1:触摸/单击位置  请在DefaultListItemRenderer的类主题中提供minTouchHeight,如: -

        renderer.minWidth = this.gridSize;
        renderer.minHeight = this.gridSize;
        renderer.minTouchWidth = this.gridSize;
        renderer.minTouchHeight = this.gridSize;

2:没有主题,没有 3:分辨率(设备模拟器)问题

按照羽毛库中给出的示例进行操作 羽毛-2.1.1 \主题\ MetalWorksMobileTheme \源\羽毛\主题