用于 ldpi、mdpi、hdpi、xhdpi 显示器的 android 初始屏幕尺寸? - 例如 : 1024X768 pixels for ldpi

标签 android splash-screen pixel-density

我必须使用 phonegap 为 android 应用程序设计启动画面(加载时适合屏幕的图像)。我必须设计适合 ldpi、mdpi、hdpi、xhdpi 等 4 种屏幕类型的 4 种尺寸图像。谁能告诉我这些屏幕的确切尺寸(以像素为单位),以便我可以按照该尺寸进行设计?

示例答案:

ldpi - 1024X768 px
mdpi  - 111 X 156 px  

 We support ldpi, mdpi, hdpi and xhdpi displays; the following will define splash screens for each specific screen type.

<gap:splash src="splash/android/ldpi.png" gap:platform="android" gap:density="ldpi" />
<gap:splash src="splash/android/mdpi.png" gap:platform="android" gap:density="mdpi" />
<gap:splash src="splash/android/hdpi.png" gap:platform="android" gap:density="hdpi" />
<gap:splash src="splash/android/xhdpi.png" gap:platform="android" gap:density="xhdpi" />

最佳答案

Android 的初始屏幕尺寸

同时用于 Cordova(又名 Phonegap)、React-Native 和所有其他开发平台

Format : 9-Patch PNG (recommended)

Dimensions

 - LDPI:
    - Portrait: 200x320px
    - Landscape: 320x200px
 - MDPI:
    - Portrait: 320x480px
    - Landscape: 480x320px
 - HDPI:
    - Portrait: 480x800px
    - Landscape: 800x480px
 - XHDPI:
    - Portrait: 720px1280px
    - Landscape: 1280x720px
 - XXHDPI
    - Portrait: 960x1600px
    - Landscape: 1600x960px
 - XXXHDPI 
    - Portrait: 1280x1920px
    - Landscape: 1920x1280px

注意: 不需要准备 XXXHDPI,也可能是 XXHDPI 大小,因为 9-patch 图像的重复区域。另一方面,如果只使用纵向尺寸,则应用尺寸可能会更小。更多图片意味着需要更多空间。

注意

我认为所有设备都没有确切的尺寸。我用的是 Xperia Z 5"。如果你开发一个跨平台的 webview 应用程序,你应该考虑很多事情(屏幕是否有软键导航按钮等)。因此,我认为只有一个合适的解决方案。解决方案是 to prepare a 9-patch splash screen (在下面找到 How to design a new splash screen 标题)。
  • 为上述屏幕尺寸创建初始屏幕为 9-patch 。使用 .9.png 后缀
  • 为您的文件命名
  • 将下面的行添加到您的 config.xml 文件中
  • 如果需要,添加启动屏幕插件。
  • 运行您的项目。

  • 而已!

    Cordova 特定代码将在 config.xml 中添加行以用于 9 补丁启动屏幕
    <preference name="SplashScreen" value="screen" />
    <preference name="SplashScreenDelay" value="6000" />
    <platform name="android">
        <splash src="res/screen/android/ldpi.9.png" density="ldpi"/>
        <splash src="res/screen/android/mdpi.9.png" density="mdpi"/>
        <splash src="res/screen/android/hdpi.9.png" density="hdpi"/>
        <splash src="res/screen/android/xhdpi.9.png" density="xhdpi"/> 
    </platform>
    

    使用 -9-patch 启动屏幕时将行添加到 config.xml
    <platform name="android">
        <splash src="res/screen/android/splash-land-hdpi.png" density="land-hdpi"/>
        <splash src="res/screen/android/splash-land-ldpi.png" density="land-ldpi"/>
        <splash src="res/screen/android/splash-land-mdpi.png" density="land-mdpi"/>
        <splash src="res/screen/android/splash-land-xhdpi.png" density="land-xhdpi"/>
    
        <splash src="res/screen/android/splash-port-hdpi.png" density="port-hdpi"/>
        <splash src="res/screen/android/splash-port-ldpi.png" density="port-ldpi"/>
        <splash src="res/screen/android/splash-port-mdpi.png" density="port-mdpi"/>
        <splash src="res/screen/android/splash-port-xhdpi.png" density="port-xhdpi"/>
    </platform>
    

    如何设计一个新的启动画面

    我将描述一种使用这种方式创建正确启动画面的简单方法。假设我们正在设计一个 1280dp x 720dp - xhdpi(x-large)屏幕。我写了下面的例子;
  • 在 Photoshop 中:文件 -> 在新对话框窗口中新 build 置您的屏幕

    宽度:720 像素
    高度:1280 像素

    我猜上述尺寸意味着分辨率为 320 像素/英寸。但要确保您可以在对话窗口中将分辨率值更改为 320。在这种情况下 像素/英寸 = DPI

    恭喜...您有一个 720dp x 1280dp 的初始屏幕模板。

  • 如何生成 9 补丁启动画面

    设计完启动画面后,如果要设计 9-Patch 启动画面,则应在每一侧插入 1 个像素间隙。出于这个原因,您应该将 Canvas 尺寸的宽度和高度增加 +2 像素(现在您的图像尺寸为 722 x 1282 )。
    我已经按照下面的指示在每一侧留下了空白的 1 像素间隙。
    使用 Photoshop 更改 Canvas 大小:
    - 在 Photoshop 中打开启动画面 png 文件
    - 单击图层字段中“背景”名称旁边的锁定图标(保留空白而不是其他颜色,如白色),如果有如下所示:
    enter image description here
    - 从图像菜单更改 Canvas 大小(宽度:720 像素至 722 像素,高度:1280 像素至 1282 像素)。现在,应该在初始屏幕图像的每一侧看到 1 个像素的间隙。
    然后你可以使用 C:\Program Files (x86)\Android\android-studio\sdk\tools\draw9patch.bat 来转换一个 9-patch 文件。为此,请在 draw9patch 应用程序上打开您的启动画面。您应该定义您的 Logo 和可扩展区域。请注意以下示例初始屏幕的黑线。黑线的粗细只有 1 px ;) 左侧和顶部的黑线定义了初始屏幕的必须显示区域。完全按照您的设计。右线和底线定义了可添加和可移除的区域(自动重复区域)。

    就这样做:
    在 draw9patch 应用程序上缩放图像的顶部边缘。单击并拖动鼠标以绘制线条。然后按 shift + 单击并拖动鼠标以删除线条。

    Sample 9-patch design

    如果您开发跨平台应用程序(如 Cordova/PhoneGap),您可以找到以下地址几乎所有 mabile OS 启动屏幕尺寸。点击 Windows PhoneWebOSBlackBerryBada-WACBada 初始屏幕尺寸。

    https://github.com/phonegap/phonegap/wiki/App-Splash-Screen-Sizes

    如果您需要 IOS、Android 等应用程序图标大小,您可以 visit here

    IOS
    Format : PNG (recommended)
    
    Dimensions
    
     - Tablet (iPad)
       - Non-Retina (1x)
         - Portrait: 768x1024px
         - Landscape: 1024x768px
       - Retina (2x)
         - Portrait: 1536x2048px
         - Landscape: 2048x1536px
     - Handheld (iPhone, iPod)
       - Non-Retina (1x)
         - Portrait: 320x480px
         - Landscape: 480x320px
       - Retina (2x)
         - Portrait: 640x960px
         - Landscape: 960x640px
     - iPhone 5 Retina (2x)
       - Portrait: 640x1136px
       - Landscape: 1136x640px
     - iPhone 6 (2x)
       - Portrait: 750x1334px
       - Landscape: 1334x750px
     - iPhone 6 Plus (3x)
       - Portrait: 1242x2208px
       - Landscape: 2208x1242px
    

    关于用于 ldpi、mdpi、hdpi、xhdpi 显示器的 android 初始屏幕尺寸? - 例如 : 1024X768 pixels for ldpi,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13487124/

    相关文章:

    java - 如何显示当前日期?安卓应用程序

    android - Phonegap 启动画面和图标的完整列表

    android - 使用 sw-600dp 布局的最小屏幕尺寸是多少?

    ios - @2x 视网膜图像等效于 Android

    android - 无法理解如何为 1.6+ 使用不同密度的图像?

    java - 从照片的 EXIF 数据中读取地理坐标

    Android客户端服务器通信困惑

    java - 将大型 JSON (InputStream) 放入 String 时出现内存不足错误

    java - 我正在尝试使用淡入动画 TextView 制作闪屏

    android - ionic 启动画面未显示,并且在 ionic View 中有白屏