我有一个关于
那些48dp相当于36px、48px和72px在ldpi、mdpi和hdpi中。所有将用于此ImageView的图像基本上都是图标,我已经在网上找到了我想要的应用程序(免费许可证)。但不幸的是,它不带有大于48px的图像,并且使用不同的图像是不可能的。所以我需要一个新的解决方案…
目前,我在ldpi和mdpi文件夹中分别拥有36px和48px的图像。但是我在hdpi上遇到了麻烦。我想要运行在hdpi设备上的设备使用mdpi图像(可用的更大的图像)并将其原样使用,而不进行缩放。基本上,hdpi的ImageView为72px,因此我希望48px的图像位于72px内部,在中心位置,而不进行缩放。为此,我尝试更改上面ImageView中的scaleType为center,但是图像仍然被缩放。
我的最终问题是,如何正确解决上述问题?我如何在各自的密度中使用ldpi和mdpi图像,但是让运行hdpi的设备选择可用的最大图像(即mdpi),并防止任何缩放,只需将图像放入ImageView的中心?
编辑: 我自己回答了这个问题,但是其他人可能正在寻找的答案可能是这个。但是我确实提供了一些关于正在发生的事情和潜在问题的见解。如果可以,请查看并提供解决方法/修复程序。我敢你:)
ImageView
的布局如下:<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:descendantFocusability="blocksDescendants">
<ImageView
android:id="@+id/imageview_icon"
android:layout_width="48dp"
android:layout_height="48dp"
android:scaleType="fitCenter" />
(...)
</LinearLayout>
那些48dp相当于36px、48px和72px在ldpi、mdpi和hdpi中。所有将用于此ImageView的图像基本上都是图标,我已经在网上找到了我想要的应用程序(免费许可证)。但不幸的是,它不带有大于48px的图像,并且使用不同的图像是不可能的。所以我需要一个新的解决方案…
目前,我在ldpi和mdpi文件夹中分别拥有36px和48px的图像。但是我在hdpi上遇到了麻烦。我想要运行在hdpi设备上的设备使用mdpi图像(可用的更大的图像)并将其原样使用,而不进行缩放。基本上,hdpi的ImageView为72px,因此我希望48px的图像位于72px内部,在中心位置,而不进行缩放。为此,我尝试更改上面ImageView中的scaleType为center,但是图像仍然被缩放。
我的最终问题是,如何正确解决上述问题?我如何在各自的密度中使用ldpi和mdpi图像,但是让运行hdpi的设备选择可用的最大图像(即mdpi),并防止任何缩放,只需将图像放入ImageView的中心?
编辑: 我自己回答了这个问题,但是其他人可能正在寻找的答案可能是这个。但是我确实提供了一些关于正在发生的事情和潜在问题的见解。如果可以,请查看并提供解决方法/修复程序。我敢你:)