如何调整播放器图像以适应任何屏幕?就像它在较小的屏幕上缩小图像一样,或者如果它在更大的屏幕上,图像变大。
这是我的代码,哪些不起作用:
player.setScaleX( player.getContentSize().width / winSize.width );
player.setScaleY( player.getContentSize().height / winSize.height);
假设父视图的尺寸与密度无关,则可以将imageView.setScaleType用于CENTER_CROP或CENTER_INSIDE以缩放图像。
http://developer.android.com/reference/android/widget/ImageView.ScaleType.html
编辑**如果您只想让图像适合整个屏幕,则将图像视图填充为宽度和高度的fill_parent,然后将该图像视图的图像设置为使用适当的比例类型。不确定为什么你需要自己的算法..
编辑***
这是一个标准问题;支持多种屏幕尺寸并适当缩放。基本思想是避免指定实际像素,而是使用与密度无关的像素。看到这个:http://developer.android.com/guide/practices/screens_support.html和这个:http://developer.android.com/guide/practices/tablets-and-handsets.html
通常,它归结为在xml和代码中使用“dp”单位来指定单位(用于文本大小和宽度/高度等),无论您的数字是TIMES getResources()。getDisplayMetrics()。密度将应用适当的比例因子。