将Default Unit设置为dp后,Titanium中的行为百分比发生了变化

时间:2013-10-12 01:36:04

标签: titanium titanium-mobile appcelerator appcelerator-mobile titanium-modules

在我的肖像Android App中,我总是使用固定的宽度百分比来拍摄我的图像。

自动计算高度以计算图像的原始比率。

例如:

Ti.UI.backgroundColor = 'white';
var win = Ti.UI.createWindow();
var image = Ti.UI.createImageView({
  image:'/images/myimage.png',
  width: "80%",
});
win.add(image);
win.open();

但是,将默认单位更改为dp:

<property name="ti.ui.defaultunit" type="string">dp</property>

此行为不再有效。

图像正常显示,忽略width: '80%'。 试图只设置高度而没有结果。

唯一的方法是设置两个百分比,因此图像会显示,而忽略百分比。

注意:

  • 用数字代替百分比也是如此。
  • 尝试使用'auto'/ Ti.UI.Size / Ti.UI.Fill 设置其中一个尺寸,但没有结果。

所以任何人都知道这是不是一个错误?有没有工作手机?

谢谢大家

1 个答案:

答案 0 :(得分:0)

解决方法是获取屏幕的高度/宽度,并进行一些简单的数学运算来计算80%的屏幕。

你可以像这样得到宽度和高度:

var height = Ti.Platform.displayCaps.platformHeight,
    width = Ti.Platform.displayCaps.platformWidth;