使用Ti.Platform.displayCaps.logicalDensityFactor自动缩放项目大小

时间:2016-03-06 19:38:24

标签: android appcelerator appcelerator-titanium appcelerator-alloy

我在我的应用中使用dip作为单位。我发现,宽度在不同的设备上并不精确,例如:292倾角宽度会在160和320 dpi设备上产生不同的结果。

这是我的基本方法:

 <ImageView id="panelImage" width="292" image="/images/loginPanel.png"></ImageView>

在显示元素之前,我检查设备密度因子(使用Ti.Platform.displayCaps.logicalDensityFactor)并使用160 / Ti.Platform.displayCaps.logicalDensityFactor高亮显示图像宽度,如下所示:

 $.panelImage.width = $.panelImage.width * 160 / Ti.Platform.displayCaps.logicalDensityFactor; 

它有效,但我的问题是我必须在每个项目上重新计算大小值... 还有其他解决办法吗?

最好的将是这样的(但它不工作!!!):

 <ImageView id="panelImage" width="(292*160/Ti.Platform.displayCaps.logicalDensityFactor)" image="/images/loginPanel.png"></ImageView>

(所以,我尝试在Alloy View定义XML文件中使用乘法。)

有什么想法吗?

0 个答案:

没有答案