【问题标题】:Flex Mobile Devlopement: Small views on Nexus 5Flex 移动开发:关于 Nexus 5 的小观点
【发布时间】:2015-03-27 15:34:36
【问题描述】:

我刚开始使用 Flex 开发 Android/iOS 应用程序。

我对在真实设备 (Nexus 5) 和 Flash Builder Emulator (Samsung Galaxy Ace) 上测试应用程序之间的差异原因有疑问

您可以在 Samsung Galaxy Ace 上看到 Actionbar 的外观:

在真机 Nexus 5 中它非常小:

我已经使用 Android SDK 开发了很多应用程序,当我测试我的自定义设计和 android 设计时,它在任何设备上看起来都不错,但在 Flex 中我尝试了很多来解决这个问题,但没有运气。

有什么建议吗?

【问题讨论】:

标签: android apache-flex flash-builder


【解决方案1】:

为您的应用程序使用 dpi 概念以适应不同的设备/屏幕 DPI。此处给出的链接描述了 flex 的 DPI 概念。

1. http://help.adobe.com/en_US/flex/mobileapps/WS19f279b149e7481c682e5a9412cf5976c17-8000.html

2. http://www.adobe.com/devnet/flex/articles/mobile-skinning-part2.html

您必须为任何特定的 DPI 应用设计。然后它将自动缩放以适应其他 DPI。喜欢:applicationDPI="160"

您可以像这样的按钮图标属性:

<s:Button>
 <s:icon> 
     <s:MultiDPIBitmapSource source160dpi="@Embed('/assets/refresh160.png')" 
                             source240dpi="@Embed('/assets/refresh240.png')" 
                             source320dpi="@Embed('/assets/refresh320.png')"/> 
 </s:icon> 
</s:Button>

【讨论】:

    【解决方案2】:

    flex 的内部 dpi 缩放不能充分处理超过 360 dpi 的较新的 android 屏幕分辨率。我在 Nexus 4、Samsung S4 & S5、Huawei Honor 6 等设备上遇到了同样的问题 - 这些设备的分辨率为 445 dpi 或接近 445 dpi。

    除非有人找到更优雅的解决方案,否则我的攻击方法是在应用程序启动时检测 360+ dpi 设备,并对应用程序中不完全依赖的所有组件应用单独的 scaleX/scaleY 调整百分比尺寸指定。 Adobe 需要在其 applicationDpi 选项中添加 400 和 480 dpi 常量。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-06
      • 2011-06-07
      • 2012-10-23
      • 2011-05-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多