yra*_*lik 6 android android-screen-support android-resources
我试图加载一些基于最小宽度属性的图像.为此,我将图像放入以下文件夹:
drawable-sw320dp
drawable-sw360dp
drawable-sw480dp
drawable-sw600dp
drawable-sw720dp
Run Code Online (Sandbox Code Playgroud)
但我想知道最小的尺寸应该是什么,以避免在运行时崩溃.如果具有最小宽度240的设备(如果存在)运行我的应用程序(它可能在运行时崩溃)会发生什么?我可以创建一个名为的文件夹
drawable-sw0dp
Run Code Online (Sandbox Code Playgroud)
并在其中放入一些图像,以便如果最小宽度属性在0到320之间,那些图像是否被加载?
我可以像下面那样以编程方式执行此操作,但我想知道我是否可以在不需要编写任何代码的情况下执行此操作.
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int widthPixels = metrics.widthPixels;
int heightPixels = metrics.heightPixels;
float scaleFactor = metrics.density;
float widthDp = widthPixels / scaleFactor;
float heightDp = heightPixels / scaleFactor;
float smallestWidth = Math.min(widthDp, heightDp);
if (smallestWidth < 320) {
//Load necessary images
}
else if (smallestWidth >= 320 && smallestWidth < 360) {
//Load necessary images
}else if (smallestWidth >= 360 && smallestWidth < 480) {
//Load necessary images
}else if (smallestWidth >= 480 && smallestWidth < 600) {
//Load necessary images
}else if (smallestWidth >= 720) {
//Load necessary images
}
Run Code Online (Sandbox Code Playgroud)
yra*_*lik -1
我意识到drawable-sw320dp文件夹是无用的。我将图像放在可绘制和可绘制-sw320dp 文件夹中,并在最小宽度为 320 dp 的设备上运行它。系统从drawable文件夹加载图像,而不是drawable-sw320dp文件夹。因此,看起来 320dp 是 Android 中可能的最小宽度,您需要将图像放在此类设备的可绘制文件夹中。
| 归档时间: |
|
| 查看次数: |
754 次 |
| 最近记录: |