Actionscript 3 将UI包添加到桌面应用程序
我想知道如何创建一个flash builder AIR项目,它可以打包一个桌面应用程序,而不是使用 如果我按照FeathersUI入门指南的指示创建了一个actionscript移动项目,那么我得到的组件样式与FeatherLive示例中看到的相同 但是,如果我创建一个“常规”actionscript项目,我得到的组件样式看起来非常小,与示例中的不一样 我错过了什么?无法创建“常规”actionscript项目吗? 然后,使用移动actionscript项目,如何为桌面打包 相关问题尽管没有具体回答我的问题:Actionscript 3 将UI包添加到桌面应用程序,actionscript-3,user-interface,mobile,starling-framework,Actionscript 3,User Interface,Mobile,Starling Framework,我想知道如何创建一个flash builder AIR项目,它可以打包一个桌面应用程序,而不是使用 如果我按照FeathersUI入门指南的指示创建了一个actionscript移动项目,那么我得到的组件样式与FeatherLive示例中看到的相同 但是,如果我创建一个“常规”actionscript项目,我得到的组件样式看起来非常小,与示例中的不一样 我错过了什么?无法创建“常规”actionscript项目吗? 然后,使用移动actionscript项目,如何为桌面打包 相关问题尽管没有具体
我在这里偶然发现了我的问题的答案: 似乎我们必须“模拟”移动设备设置,才能使FeatherUI正确显示:
//pretends to be an iPhone Retina screen
DeviceCapabilities.dpi = 326;
DeviceCapabilities.screenPixelWidth = 960;
DeviceCapabilities.screenPixelHeight = 640;
可以在组件资源管理器的github源代码中看到:
对于桌面AIR应用程序,您应该使用桌面主题,而不是中提到的
MetalWorksMobileTheme
。Feathers包括几个示例主题,一些是目标手机主题,另一些是目标桌面主题。一个好的开始是MetalWorksDesktopTheme
。它的设计与MetalWorksMobileTheme类似,但它是专为桌面设计的
为桌面应用程序使用桌面主题有两个主要原因:
MetalWorksMobileTheme
)尝试根据功能调整其内容的大小。screenDPI
,以便组件在所有屏幕上以相同的物理大小(英寸或厘米)呈现。这对于移动设备来说非常好,但是组件在桌面上的渲染会太小,特别是因为桌面上的Flash运行时没有报告所连接屏幕的正确DPI通过设置
DeviceCapabilities.dpi
找到的解决方法不是推荐的方法。此API的存在只是因为它允许feathersui.com网站上的演示模拟组件在移动设备上的显示方式。要扩展真正的应用程序,应该使用Starling的多分辨率API。详见《椋鸟手册》。这不是正确的方法。您应该使用桌面主题而不是移动主题。更改DeviceCapabilities上的属性是我在feathersui.com上的Flash Player中显示移动应用程序演示时需要添加的一项黑客行为,不建议将其用于真正的应用程序。@joshtynjala我一直认为这有点黑客行为,我应该更改它。然而,这是一个很好的快速解决方案,可以开始主题修改/样式:)-哦,我也改变了答案。