所有屏幕设备的图像大小

dev*_*v90 9 android image android-layout image-size android-studio

我有PSD,分辨率是1080X1920,它包含一个Dot分辨率为的图像22X22.

我已裁剪该图像并将其放入我的res文件夹中.

我的问题是Android如何知道图像是用于1080X1920屏幕的.它会在small屏幕上打开相同的图像,2560x1440分辨率更小.

有没有办法,除了为每个屏幕尺寸放置不同的图像,告诉Android使用图像的特定屏幕尺寸和规模为其他 screens

Ami*_*ela 14

直接使用https://romannurik.github.io/AndroidAssetStudio/

例如,两个都报告屏幕尺寸正常的设备可能具有实际的屏幕尺寸和纵横比,当手动测量时,它们略有不同.类似地,报告屏幕密度为hdpi的两个设备可能具有略微不同的实际像素密度.Android将这些差异抽象为应用程序,因此您可以提供针对通用大小和密度设计的UI,并让系统根据需要处理任何最终调整

您必须创建不同的维度,布局,图像和图标文件以支持所有设备.

屏幕密度的变化.

xlarge screens are at least 960dp x 720dp
large screens are at least 640dp x 480dp
normal screens are at least 470dp x 320dp
small screens are at least 426dp x 320dp
Run Code Online (Sandbox Code Playgroud)

制作此布局文件,以便它对所有设备都相同.

根据设备提供填充,边距,字体和所有属性.

res/layout/main_activity.xml           # For handsets (smaller than 600dp available width)
res/layout-sw600dp/main_activity.xml   # For 7” tablets (600dp wide and bigger)
res/layout-sw720dp/main_activity.xml   # For 10” tablets (720dp wide and bigger)
Run Code Online (Sandbox Code Playgroud)

对于布局,

res/layout/my_layout.xml              // layout for normal screen size ("default")
res/layout-large/my_layout.xml        // layout for large screen size
res/layout-xlarge/my_layout.xml       // layout for extra-large screen size
res/layout-xlarge-land/my_layout.xml  // layout for extra-large in landscape orientation
Run Code Online (Sandbox Code Playgroud)

对于图像

res/drawable-mdpi/graphic.png         // bitmap for medium-density
res/drawable-hdpi/graphic.png         // bitmap for high-density
res/drawable-xhdpi/graphic.png        // bitmap for extra-high-density
res/drawable-xxhdpi/graphic.png       // bitmap for extra-extra-high-density
Run Code Online (Sandbox Code Playgroud)

对于图标

res/mipmap-mdpi/my_icon.png         // launcher icon for medium-density
res/mipmap-hdpi/my_icon.png         // launcher icon for high-density
res/mipmap-xhdpi/my_icon.png        // launcher icon for extra-high-density
res/mipmap-xxhdpi/my_icon.png       // launcher icon for extra-extra-high-density
res/mipmap-xxxhdpi/my_icon.png      // launcher icon for extra-extra-extra-high-density
Run Code Online (Sandbox Code Playgroud)

对于Launcher图标

36x36 (0.75x) for low-density
48x48 (1.0x baseline) for medium-density
72x72 (1.5x) for high-density
96x96 (2.0x) for extra-high-density
180x180 (3.0x) for extra-extra-high-density
192x192 (4.0x) for extra-extra-extra-high-density (launcher icon only; see note above)
Run Code Online (Sandbox Code Playgroud)

Checkout Dimension支持多个屏幕官方文档.


BAI*_*RMA 6

Android Studio在您的Android Studio中安装了一个名为“批量可绘制”的插件。这有助于创建不同大小的图像。

导入步骤:文件->设置->插件->浏览存储库->单击安装按钮。

重新启动您的Android Studio,然后您将可以在Android Studio的文件菜单中找到“批处理可绘制”。

链接:https//github.com/winterDroid/android-drawable-importer-intellij-plugin