资源限定符的各个意思,做个笔记
1.Ratio(屏幕比例)
只有两个选项Long和Not-Long
https://stackoverflow.com/questions/11752381/android-resource-notlong-long-identifiers-not-working
根据以上问答得到的结果,屏幕比例小于基线(800/480=1.6)时,会调用not-long下的资源,大于基线比例调用long下的资源
2.Layout Direction
布局方向:LTR布局方向从左往右时,调用指定资源。RTL从右往左时调用指定资源
3.Smallest Screen Width
屏幕dp达到设置的最小宽度,即调用指定资源
4.Size
X-Large超大屏幕至少为 960dp x 720dp
Large 大屏幕至少为 640dp x 480dp
Normal 正常屏幕至少为 470dp x 320dp
Small 小屏幕至少为 426dp x 320dp
华为p20 2244x1080 和荣耀7 1920x1080都是自动用的Normal资源
5.Screen Width
如果设置宽度300dp,那么手机屏大于300dp时,会调用相应资源目录下的资源。感觉跟3一样?3没有尝试
6.Screen Height同上
我是为了解决18:9全面屏和16:9普通屏加载全屏图片不适配的问题。
最终通过Screen Height这个属性解决的,设置一个资源限定符drawble-h500dp放的是16:9的图片,drawble-h700dp放的是2:1的图片。最终各自屏幕比例的手机加载的相应比例的图片。目前看是解决了。