安卓手机APP开发__屏幕兼容性概述

安卓手机APP开发__屏幕兼容性概述

目录

概述

屏幕大小

灵活的布局

备选的布局

可改写的图像

像素的深度

深度依赖

备选的位图

向量图形


概述

安卓运行各种各样的设备,它们有不同的屏幕大小和屏幕的像素深度。

系统执行基本的缩放和变形来适配在不同的屏幕大小上的用户界面,

但是这里有一些方法来帮助你的用户界面更好地适应每一种类型的屏幕。

这里提供了一个安卓系统上可用的特性,帮助你的APP来适配。对于更多的

如何在不同的屏幕上的构建你的APP的指令,见如下的文档:

支持不同的屏幕大小

支持不同的像素深度

屏幕大小

屏幕大小是你的APP的用户界面的可见的空间。屏幕的大小,它能被你的APP识别,

它不是设备屏幕的实际的大小。APP必须考虑到屏幕的方向,系统方向,例如,导航条

窗口配置改变区,例如当使用多窗口模式时的切换窗口。

灵活的布局

默认情况下,安卓为了适应当前的屏幕大小,会改变你的APP的布局。

对于屏幕大小上的微小变化,为了帮助你的APP的布局更好的调整,实现

你的布局的灵活性。不要硬编码你的用户界面的组件的位置和大小。代替的是

让视图的大小可以改变,指定视图的相对于父级视图的相对位置,这样就可以实现

你的目标顺序以及相对位置在布局有缩放时保持不变。

为了了解更多的灵活布局的知识,见响应式设计。

备选的布局

一个灵活的布局是重要的,但是你也需要设计不同的布局,在不同的设备上,对于

可用的空间上,来优化用户的使用体验。安卓让你提供一个备选的布局文件,系统

基于当前的设备屏幕的大小,在运行时应用布局文件。

为了了解如何创建一个备选的布局,见可适配的设计

可改写的图像

因在你的布局需要为了适配当前的屏幕而改变,所以你要把位图附加到布局视图的可能的位置上。

然而,在任意方向上改变一个普通的位图,能导致很奇怪的缩放,和失真的图像。

为了解决这个问题,安卓支持分成九块的位图,在这个位图上,你能一个小的区域是可以改变的

图像的其它区域是保持不变的。

为了了解更多的关于分成九块的位图,见九块位图的可修改性。

像素的深度

像素的深度就屏幕上一个物理区域上的像素的个数。它被引用为dpi(每英寸上的点数)

这不同于屏幕的分辨率,它是一个屏幕上的总的像素的数量.

深度依赖

当在屏幕上显示不同的像素深度时,当你的用户界面设计的视图的用户视角来看,

它要维持的物理尺寸时,你的APP就达到了"深度依赖"了。维持深度依赖是很重要的,

因为没有了它,一个用户界面元素比如一个按钮在一个低的深度的屏幕上可能出现很大的情况,

并且在一个高的深度的屏幕上又很小的情况。

通过提供独立于深度的像素作为一个度量的单位,安卓帮助你完成了深度依赖。

为了了解关于深度独立的像素,见使用深度独立像素。

备选的位图

为了让你的图像在所有的屏幕上都看起来很好,为了匹配每个屏幕深度,提供了备选的位图。

如果你的APP提供了仅为低深度屏幕准备的位图,当在一个高的深度的屏幕上时,安卓要缩放它

这在位图会引起可见的缩放效应。所以你的APP必须包括在一个高的分辨率下的备选位图。

为了了解如何提供备选的位图,见提供备选的位图。

向量图形

对于简单的类型的图像,例如,图标,通过使用向量图形,你能避免

为每一个深度,创建一个独立的图像。因为,向量图形定义了几何的线条的路径,

来代替像素,它们能以任意的大小进行绘制,而不用缩放。

为了了解关于向量图形的更多的信息,见优先的向量图形。

相关推荐
阿华-vitor2 小时前
自定义控件之动画篇(六)——联合动画的代码及xml实现
android·xml·gitee
baozongwi4 小时前
ctfshow web sql注入 web242--web249
android·数据库·经验分享·sql·mysql·web安全
Dnelic-4 小时前
Android 15 应用适配默认全屏的行为变更(Android V的新特性)
android·ui·view·应用开发·android 15·android应用开发
分享者花花5 小时前
数据恢复篇:5 款最佳 Mac 数据恢复软件
windows·macos·ios·智能手机·电脑·笔记本电脑·iphone
svygh1236 小时前
安卓h5打包系统设计
android·html5·打包
人民的石头6 小时前
Android studio 打包低版本的Android项目报错
android·ide·android studio
xiangxiongfly9158 小时前
Android 换肤之主题换肤
android·换肤·主题换肤
Freeze-hu12 小时前
qt for android 工程添加AndroidManifest.xml 文件
android·xml
H10016 小时前
手机系统设置选项
android
coder_pig16 小时前
跟🤡杰哥一起学Flutter (十九、Flutter混编杂谈[Android]😫)
android·flutter·harmonyos