Android layout Android多屏幕指南
我是android开发的新手Android layout Android多屏幕指南,android-layout,Android Layout,我是android开发的新手 目前我正在开发一个项目,但我不知道如何支持所有设备的多屏幕,所以有人能指导我使我的应用程序兼容所有设备吗?没有魔法棒支持所有屏幕大小,它取决于具有不同密度的dimens.xml文件,例如:您提供了一些视图高度和宽度100dp并在低分辨率和高分辨率屏幕上进行测试,但为什么是dppx=dp*(dpi/160)根据公式dp是屏幕上的像素数与每英寸物理点的比例,其中1dp=160px与160点屏幕中相同,因此不同的手机每英寸具有不同的dpidenisty点 mdpi->1d
目前我正在开发一个项目,但我不知道如何支持所有设备的多屏幕,所以有人能指导我使我的应用程序兼容所有设备吗?没有魔法棒支持所有屏幕大小,它取决于具有不同密度的
dimens.xml
文件,例如:您提供了一些视图高度和宽度100dp
并在低分辨率和高分辨率屏幕上进行测试,但为什么是dppx=dp*(dpi/160)
根据公式dp是屏幕上的像素数与每英寸物理点的比例,其中1dp=160px
与160点屏幕中相同,因此不同的手机每英寸具有不同的dpi
denisty点
mdpi->1dp=1px
hdmpi->1dp=1.5px
xdpi->1dp=2px
xxdpi->1dp=3px
xxxdpi->1dp=4px
所以,为了使声明正确和清晰,您需要根据屏幕资源设置衍射dps,以匹配dp应有的像素比例
我在android studio上使用了一个非常漂亮的工具,叫做
dimennify
搜索插件并安装,然后重新启动android studio
并将其用作:
- Navigate to the android studio dimension file
- Point the cursor to any dimen you've create
- Right click > Generate > "Generate alternate dimens.."
我更喜欢以下映射
mdpi 0.8、hdpi 1.0、xhdpi 1.2、xxhdpi 1.4,xxxhdpi 1.6
根据需要调整没有魔术棒支持所有屏幕大小,它取决于密度不同的dimens.xml
文件。例如:您提供了一些视图高度和宽度100dp
,并在低分辨率和高分辨率屏幕上进行测试,但为什么是dppx=dp*(dpi/160)
根据公式dp是屏幕上的像素数与每英寸物理点的比例,其中1dp=160px
与160点屏幕中相同,因此不同的手机每英寸具有不同的dpi
denisty点
mdpi->1dp=1px
hdmpi->1dp=1.5px
xdpi->1dp=2px
xxdpi->1dp=3px
xxxdpi->1dp=4px
所以,为了使声明正确和清晰,您需要根据屏幕资源设置衍射dps,以匹配dp应有的像素比例
我在android studio上使用了一个非常漂亮的工具,叫做
dimennify
搜索插件并安装,然后重新启动android studio
并将其用作:
- Navigate to the android studio dimension file
- Point the cursor to any dimen you've create
- Right click > Generate > "Generate alternate dimens.."
我更喜欢以下映射mdpi 0.8、hdpi 1.0、xhdpi 1.2、xxhdpi 1.4、xxxhdpi 1.6
根据需要进行调整您可以使用这是一个具有平面视图层次结构的布局(没有嵌套的视图组)-基本上,您可以创建一个对所有屏幕大小都有响应的布局 来自文档: ConstraintLayout允许使用平面视图层次(无嵌套视图组)创建大型复杂布局。它类似于RelativeLayout,因为所有视图都是根据同级视图和父布局之间的关系进行布局的,但它比RelativeLayout更灵活,更易于与Android Studio的布局编辑器一起使用 你可以用
这是一个具有平面视图层次结构的布局(没有嵌套的视图组)-基本上,您可以创建一个对所有屏幕大小都有响应的布局 来自文档: ConstraintLayout允许使用平面视图层次(无嵌套视图组)创建大型复杂布局。它类似于RelativeLayout,因为所有视图都是根据同级视图和父布局之间的关系进行布局的,但它比RelativeLayout更灵活,更易于与Android Studio的布局编辑器一起使用