我在Appcelerator中编写了一个应用程序,它将运行不同的移动屏幕。因此,屏幕尺寸和比例会很多。
让我这样问一下;我有一个图像对象,我希望它在不同的屏幕上保护它的比例。
如何计算宽度和宽度?不同屏幕的这个对象的高度?
1920 X 1080屏幕中的对象大小为885 X 109。
(例如)812 X 375(iPhone X尺寸)屏幕的尺寸应该是多少?
提前致谢。
答案 0 :(得分:0)
您可以使用
Alloy.Globals.WIDTH = (OS_ANDROID) ? Ti.Platform.displayCaps.platformWidth / Ti.Platform.displayCaps.logicalDensityFactor : Ti.Platform.displayCaps.platformWidth;
Alloy.Globals.HEIGHT = (OS_ANDROID) ? Ti.Platform.displayCaps.platformHeight / Ti.Platform.displayCaps.logicalDensityFactor : Ti.Platform.displayCaps.platformHeight;
获取正确的设备尺寸。
但我不确定我是否理解这个问题。您不需要在不同设备上对图像的宽高比进行任何特殊操作。您可以在Ti.UI.SIZE
或width
上使用height
,在另一个属性上使用固定值来保持宽高比。例如。如果您的图像应始终为300dp宽度,请将高度设置为Ti.UI.SIZE
。
如果要将图像宽度调整为设备屏幕宽度,但保留左/右边距,则可以使用
image.width = Ti.UI.FILL;
image.left = 10;
image.right = 10;
imahe.height = Ti.UI.SIZE;
对于其他计算,您可以使用上面的Alloy.Globals.WIDTH
或Alloy.Globals.WIDTH
(将其放入alloy.js)并将其乘以图像比率以获得另一面。