目录:(让你更快到达想要到的内容)-----请点击上方拥有“目录”显示的标志
基础:
----我这边先把基础整理了,比较难的放在后面,这边拿个概念,起码能说
什么是屏幕尺寸、屏幕分辨率、屏幕像素密度?
屏幕尺寸(不重要):指屏幕的对角线的长度。单位是英寸,1英寸 = 2.54厘米
屏幕分辨率:指在横纵向上的像素点数。单位是px,1px = 1个像素点。如:1280(纵向)*800(横向)。
屏幕像素密度:指每英寸上单的像素点数。单位是dpi,即"dot per inch"的缩写。屏幕像素密度与屏幕尺寸和屏幕分辨率有关。
像素点数怎么算呢?1280^2+800^2=√2278400 / 5寸 = 301.88739...DPI
什么是dp、dip、dpi、sp、px?之间的关系是什么?
px:构成图像的最小单位
dp与dip:Density Indepent Pixels (缩写),dp与dip都即密度无关像素以160dpi为基准,1dip = 1px
注意:在通过不同的像素密度和不同分辨率的设备上使用“dp”就可以出现相同的效果。
例子如,一个小屏幕和一个大屏幕的DPI都是不同的,所以如果使用了dp会到了不同的屏幕自动计算屏幕的px
计算大约为:dp * px(1dp = **px倍数) = px。不太懂的话请再去看别人的文档,这里不啰嗦了!
sp:Scale-Independent Pixels(缩写),指可以根据文字大小首选项进行放缩。
什么是hdpi、mdpi、xhdpi、xxhdpi、xxxhdpi?如何计算和区分?
不同的图片像素密度,显示是不一样的,所以谷歌提供了一些方法,让它自动寻找接近的图片像素,也就是存放在hdpi或者xxhdpi等等。
hdpi:120dpi - 160dpi(像素密度范围)
mdpi:160dpi - 240dpi(像素密度范围)
xhdpi:240dpi - 320dpi(像素密度范围)
xxhdpi:320dpi - 480dpi(像素密度范围)
xxxhdpi:480dpi - 640dpi(像素密度范围)
解决方案
支持各种屏幕尺寸
使用wrap_content、match_parent、weight(尽量多使用-如:1:2,3:6等等比率,按键与按键之间的大小比较,使用权重(weight)到各种屏幕都按照比例来显示,按钮的所占的倍数也会通过自动计算,慢慢算。注意:使用时需将:android:layout_width="0dp",不然会出现问题
如果将android:lanyout_width="match_parent"将会,有原先的1:2变为2:1).
使用相对布局,禁用绝对布局
使用限定符---(这个自己搜,内容太多了)
使用自动拉伸位图
(Android Studio如何进入图片编辑制作9.png工具呢?)
然后选择需要保存的位置就行了,使用方法,其他网站都可以看。
由于基本都不会出现问题,只要不限定大小就行。目前,安卓没有屏幕适配的框架,所以没那么麻烦。