0

如何调整我的播放器图像以适应任何屏幕?就像它在较小的屏幕上会缩小图像,或者如果它在较大的屏幕上图像会变大。

这是我拥有但不起作用的代码:

player.setScaleX( player.getContentSize().width / winSize.width );
player.setScaleY( player.getContentSize().height / winSize.height);
4

1 回答 1

0

假设父视图的尺寸与密度无关,您可以使用 imageView.setScaleType 到 CENTER_CROP 或 CENTER_INSIDE 来缩放图像。

http://developer.android.com/reference/android/widget/ImageView.ScaleType.html

编辑**如果您只想让图像适合整个屏幕,则为宽度和高度设置图像视图的填充父项,然后将该图像视图的图像设置为使用适当的比例类型。不知道为什么你需要自己的算法..

编辑***

这是一个标准问题;支持多种屏幕尺寸和适当缩放。基本思想是避免指定实际像素,而是使用与密度无关的像素。看到这个: http: //developer.android.com/guide/practices/screens_support.html和这个:http: //developer.android.com/guide/practices/tablets-and-handsets.html

通常归结为在 xml 和代码中使用“dp”单位来指定单位(用于文本大小和宽度/高度等),无论您的数字是 TIMES getResources().getDisplayMetrics().density,这将应用适当的比例因子。

于 2011-11-20T23:43:54.330 回答