Android SDK 1.5和2.0在渲染方面有什么区别?

时间:2010-03-02 16:17:55

标签: android layout emulation

我几乎完成了Android应用程序的开发。但似乎有一个问题。当我开始处理该项目时,我只使用默认的1.5设备分辨率,即320x480。但是现在当我处于测试阶段时,我开始在1.5和2.0中以480x800和480x854进行测试。这些分辨率未在1.5 AVD管理器中定义,因此我使用提供的工具创建自己的分辨率。我设置分辨率加上新的dpi(大显示器为240,小显示器为16o)。所以这就是我测试时发生的事情。

在1.5中,当我将常量设置为高分辨率并运行具有特定AVD的应用程序时,我获得了比例且对齐良好的组件,但图像具有相同的分辨率,文本字体也保持其大小。当然整个布局都会延伸,所以现在我的ListActivity中有更长的行。

另一方面,在2.0中,我根本没有改变常量。但是那里的情况是应用程序的外观保持不变。图片被拉伸以适应他们新扩展的容器,但一切看起来像我正在开发应用程序的原始分辨率,只是更大。

我的问题是为什么以及如何发生这种情况?关于布局,2.0中有一些修改,但究竟是什么?我怎样才能让我的应用程序在1.5中看起来与2.0一样?

我难以描述这种情况,因为法律问题我无法发布任何截图。因此,如果您需要任何澄清,请不要犹豫。所有帮助表示赞赏。谢谢。

P.S。当我的意思是测试时,我的意思是仅在模拟器上。没有使用过真正的设备。

2 个答案:

答案 0 :(得分:2)

引用自己:

  

如果您的应用程序已编译为   Android 1.5或更低版本,Android会   假设您的应用程序已设计   在经典的屏幕上看起来不错   大小和分辨率。然后Android会   自动执行以下操作:

     
      
  • 如果您的应用程序安装在屏幕较大的设备上,   Android将运行您的应用程序   “兼容模式”,缩放   一切都基于实际的屏幕   尺寸。所以,假设你有一个24px   方形PNG文件和Android安装   并在设备上运行您的应用程序   标准的物理尺寸但是   WVGA分辨率(所谓的   “高密度”屏幕)。 Android可能   将PNG文件缩放为36px   显示它,所以它将占用   屏幕上的可见空间相同。上   加上方,Android处理这个问题   自动;在负面,   位图缩放算法倾向于制作   图像有点模糊。
  •   
  • Android会阻止您的应用在设备上运行   屏幕较小。因此,QVGA   设备,如HTC Tattoo,将是   甚至无法得到你的申请   如果它在Android上可用   市场。
  •   
     

如果您的应用程序是针对Android 1.6或更高版本编译的,则Android会假定您是正确的   处理所有屏幕尺寸,因此不会以“兼容模式”运行您的应用程序。

我建议您阅读以下内容:

(注意:AndroidGuys链接可能加载速度有点慢 - 他们的网站存在一些问题)

引用的段落来自上面的第三个项目符号项目。

答案 1 :(得分:1)

看一下Supporting Multiple Screens上的android文档。基本上1.5 SDK只是真正意味着显示HVGA内容,1.6 SDK是第一个真正支持多种分辨率的版本。

FTA:

  

Android 1.5及更早版本   该平台旨在支持   单屏配置 - HVGA   (3.2x480)分辨率在3.2英寸屏幕上。

     

...

     

从Android 1.6开始,   平台增加了对多个的支持   屏幕尺寸和分辨率,   反映了许多新的类型和   平台所用设备的大小   会跑。

所以基本上不用担心Android 1.5中的多个分辨率,我总是使用1.6SDK编译我的代码以获得多分辨率支持,但是将minimumSDK设置为1.5以便覆盖更广泛的用户。