用于 ldpi、mdpi、hdpi、xhdpi 显示器的 android 初始屏幕尺寸? - 例如:ldpi 为 1024X768 像素
Posted
技术标签:
【中文标题】用于 ldpi、mdpi、hdpi、xhdpi 显示器的 android 初始屏幕尺寸? - 例如:ldpi 为 1024X768 像素【英文标题】:android splash screen sizes for ldpi,mdpi, hdpi, xhdpi displays ? - eg : 1024X768 pixels for ldpi 【发布时间】:2012-11-09 08:12:20 【问题描述】:我必须使用 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" />
【问题讨论】:
this 会帮助你 【参考方案1】: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,由于 9-patch 图像的重复区域,也可能需要准备 XXHDPI 大小。另一方面,如果只使用纵向尺寸,则应用尺寸可能会更小。更多图片意味着需要更多空间。
注意
我认为所有设备都没有确切的尺寸。我用的是 Xperia Z 5"。如果你开发一个跨平台的 webview 应用程序,你应该考虑很多事情(屏幕是否有软键导航按钮等)。因此,我认为只有一个合适的解决方案。解决方案是 @ 987654321@(在下方找到 How to design a new splash screen
标题)。
-
为上述屏幕尺寸创建初始屏幕为9-patch。使用 .9.png 后缀为您的文件命名
将以下行添加到您的 config.xml 文件中
如果需要,添加启动画面插件。
运行您的项目。
就是这样!
Cordova 特定代码要在 config.xml 中添加行以用于 9-patch 初始屏幕
<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>
在使用 non-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 中:文件 -> 在新对话框窗口中新建设置您的屏幕
宽度:720 像素 高度:1280 像素
我猜上述尺寸意味着分辨率为 320 像素/英寸。但要确保您可以在对话窗口中将分辨率值更改为 320。在这种情况下 像素/英寸 = DPI
恭喜...您有一个 720dp x 1280dp 的初始屏幕模板。
如何生成 9-patch 启动画面
在你设计好你的启动画面后,如果你想设计 9-Patch 启动画面,你应该在每一边插入 1 个像素的间隙。出于这个原因,您应该将画布尺寸的宽度和高度增加 +2 像素(现在您的图像尺寸为 722 x 1282 )。 我已经按照下面的指示在每一侧留下了 1 个像素的空白间隙。 使用 Photoshop 更改画布大小: - 在 Photoshop 中打开启动画面 png 文件 - 单击图层字段中“背景”名称旁边的锁定图标(留空而不是其他颜色,如白色),如果有如下所示: - 从图像菜单更改画布大小(宽度:720 像素至 722 像素,高度:1280 像素至 1282 像素)。现在,应该会在初始屏幕图像的每一侧看到 1 个像素的间隙。 然后你可以使用 C:\Program Files (x86)\Android\android-studio\sdk\tools\draw9patch.bat 来转换一个 9-patch 文件。为此,请在 draw9patch 应用程序上打开您的启动画面。您应该定义您的徽标和可扩展区域。请注意以下示例初始屏幕的黑线。黑线的粗细只有 1 px ;) 左侧和顶部的黑线定义了初始屏幕的必须显示区域。完全按照您的设计。右线和底线定义了可添加和可移除的区域(自动重复区域)。
就这么做: 在 draw9patch 应用程序上缩放图像的顶部边缘。单击并拖动鼠标以绘制线条。然后按 shift + 单击并拖动鼠标以擦除线条。
如果您开发跨平台应用程序(如 Cordova/PhoneGap),您可以在以下地址找到几乎所有 mabile OS 启动屏幕尺寸。点击查看Windows Phone、WebOS、BlackBerry、Bada-WAC 和Bada 初始屏幕尺寸。
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
【讨论】:
【参考方案2】:适用于 Android 移动设备
LDPI- icon-36x36,splash-426x320(现在有正确的值)
MDPI- 图标 48x48,飞溅 470x320
HDPI- 图标 72x72,飞溅 - 640x480
XHDPI- 图标-96x96,飞溅- 960x720
XXHDPI- 图标 - 144x144
全部以像素为单位。
适用于 Android 平板设备
LDPI:
Portrait: 200x320px
Landscape: 320x200px
MDPI:
Portrait: 320x480px
Landscape: 480x320px
HDPI:
Portrait: 480x800px
Landscape: 800x480px
XHDPI:
Portrait: 720px1280px
Landscape: 1280x720px
【讨论】:
@Geobits:两者都以像素为单位。那是针对不同的分辨率。我没有看到任何混乱。奇怪!! 根据this,您为ldpi/mdpi/hdpi/xhdpi
指定的尺寸与dp 中的small/normal/large/xlarge
相对应。此外,如果它们是 像素大小,它们应该是0.75/1/1.5/2
的比例。你有我没有看到的这些尺寸的来源吗?
@NijilNair : 为什么平板上的图片分辨率比手机上的小?!不应该反过来吗?例如,我很惊讶“手机 ldpi:426x320”,然后是“平板电脑 ldpi:320 x 200”……似乎根本不合逻辑。感谢您的回答!
@Phalanx :检查此链接。 developer.android.com/guide/practices/….
你确定 LDPI 图标不是 36x36 吗?【参考方案3】:
由于 Android 没有设置标准尺寸,因此可以有任意数量的不同屏幕尺寸,因此您可以使用 Google 提供的最小屏幕尺寸作为指导。
根据 Google 的统计,大多数 ldpi 显示器是小屏幕,而大多数 mdpi、hdpi、xhdpi 和 xxhdpi 显示器是正常尺寸的屏幕。
xlarge 屏幕至少为 960dp x 720dp 大屏幕至少为 640dp x 480dp 普通屏幕至少为 470dp x 320dp 小屏幕至少为 426dp x 320dp您可以在 Google 的仪表板 available here 上查看设备相对大小的统计信息。
有关多个屏幕的更多信息可以找到here。
9 补丁图片
最好的解决方案是创建一个九块图像,这样图像的边框可以拉伸以适应屏幕的大小,而不会影响图像的静态区域。
http://developer.android.com/guide/topics/graphics/2d-graphics.html#nine-patch
【讨论】:
能否也包括 xxhdpi? (如果存在) Google 将 xxhdpi 定义为 ~480 DPI。据我所知,他们没有为此提供最小屏幕尺寸。 为什么会有这么多赞?xlarge != xhdpi
,他们测量的是两种完全不同的东西。这些 dp 大小是针对大小桶列出的,而不是密度。
@geobits 看看这个问题。他正在询问对于他支持的每个密度,他的初始屏幕应该是什么尺寸。由于 Android 没有设置标准尺寸,因此可以有任意数量的不同尺寸,我们可以给出的最接近的正确答案是由 Google 提供的最小屏幕尺寸。如果您点击答案中的链接,您可以阅读更多相关信息。
我明白你在说什么,但这不是你的回答所说的。如果是这样,我什至不会发表评论。他要了一份尺码表,而你只是根据别的东西给出了一份清单,没有任何解释。无论您是否链接到文档,都应该对其进行编辑。【参考方案4】:
LDPI:纵向:200 X 320 像素。横向:320 X 200 像素。
MDPI:纵向:320 X 480 像素。横向:480 X 320 像素。
HDPI:纵向:480 X 800 像素。横向:800 X 480 像素。
XHDPI:纵向:720 X 1280 像素。横向:1280 X 720 像素。
XXHDPI:纵向:960 X 1600 像素。横向:1600 X 960 像素。
XXXHDPI:纵向:1280 X 1920 像素。横向:1920 X 1280 像素。
【讨论】:
我读到的所有地方 xhdpi 都只是 mdpi 的两倍,所以根据 xhdpi 应该是 640 x 960,但你写的是 720x1280。你能解释一下它是720x1280吗?你用的是哪个公式? xxxhdpi 不是 1440x2560 吗?根据此列表,其中 Google Pixel XL 列为 xxxhdpi material.io/resources/devices【参考方案5】: Xlarge 屏幕至少为 960dp x 720dp 列表项大屏幕至少为 640dp x 480dp 列表项普通屏幕至少为 470dp x 320dp 列表项小屏幕至少为 426dp x 320dp使用它来创建您的图像并将它们放在特定的资源文件夹中。
【讨论】:
【参考方案6】:只要使用这个网站:http://ticons.fokkezb.nl :)
它让您更轻松,并直接生成正确的尺寸
【讨论】:
这个网站似乎是 iOS 图片,而不是 Android。 我在android上用过,对效果很满意;à【参考方案7】:xlarge 屏幕至少为 960dp x 720dp 布局-xlarge 10" 平板电脑(720x1280 mdpi、800x1280 mdpi 等)
大屏幕至少是 640dp x 480dp 中间平板电脑,例如 Streak (480x800 mdpi)、7 英寸平板电脑 (600x1024 mdpi)
普通屏幕至少为 470dp x 320dp 布局典型手机屏幕 (480x800 hdpi)
小屏幕至少为 426dp x 320dp 典型手机屏幕(240x320 ldpi、320x480 mdpi 等)
【讨论】:
以上是关于用于 ldpi、mdpi、hdpi、xhdpi 显示器的 android 初始屏幕尺寸? - 例如:ldpi 为 1024X768 像素的主要内容,如果未能解决你的问题,请参考以下文章