我的应用程序中心有一个圆形。在 480x800 分辨率下,一切都很完美,但在 320x480 分辨率下,圆圈太小了。我在 drawable-hdpi 文件夹中有一个 circle.png,大小为 470px x 470px。我尝试在 drawable-mdpi 文件夹中添加一个 310x310 的 circle.png,但结果是一样的。这是布局xml的代码:
<ImageView
android:id="@+id/indicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:adjustViewBounds="true"
android:scaleType="fitCenter"
/>
在每种分辨率下,圆圈与显示器左右边缘的距离是否可能只有几个像素?
http://imageshack.us/photo/my-images/857/apppv.jpg/
编辑:我最终以这种方式解决了这个问题:
LayoutParams lp = indicator.getLayoutParams();
lp.width = (int) (disW-(disW*0.06));
lp.height = (int) (disW-(disW*0.06));
indicator.setLayoutParams(lp);
//这工作得很好,纵横比是正确的。
EDIT2:这根本不是一个解决方案,因为缩放图像的图像质量真的很差......但我找到了两个教程:http: //developer.sonymobile.com/wp/2011/06/27/how- to-scale-images-for-your-android%E2%84%A2-application/ http://android.creid.eu/how-to-resize-an-image-and-preserve-quality/
我必须弄清楚哪个是最好的方法...