2017-07-10 15 views
0

我有一个大的图像我想集中在View。我希望ImageView的高度占用设备高度的100%,并且无论宽度如何都占用设备宽度。如何使视图的维度伸展超出设备尺寸?

我不希望图像压扁以适应设备的宽度,我想看到图像的中心,如果任何宽度是离屏和不可见的,那就很好。

我试了几件事,但没有任何作品。

编辑︰我的答案下面适用于iOS,但我仍然没有想出一种方法来让它在Android上正常工作。我用ui.js通过FokkeZB:

https://github.com/FokkeZB/UTiL/blob/master/app/lib/ui.js

这做什么,我想这与我的形象做的,但它是不幸的是有点慢(图像加载画面出现后,我想我可以加载前期的所有图像。后来应用它们

回答

0

我结束了在这种情况下,做一些简单的数学获取设备的高度。

var height = Math.floor(Titanium.Platform.displayCaps.platformHeight); 

然后我将我的imageView的高度设置为设备的高度。接下来,我需要我的形象的比率:

var ratio = imgOgWidth/imgOgHeight 

然后乘以设备高度:

var imageWidth = height * ratio; 

而且我的XML成立这样的:

<View clipMode="Titanium.UI.iOS.CLIP_MODE_ENABLED" height="Ti.UI.FILL" width="Ti.UI.FILL"> 
     <ImageView id="background_image" image="/images/myImage.jpg"/> 
</View> 

在我.js文件我将图像的宽度和高度设置为上面的。效果很好!可能不同的风景,但这适用于我的应用程序被锁定到肖像。

注意:这只适用于iOS。

相关问题