我们对Android布局设计的最佳实践感到困惑。到目前为止,我们为每种屏幕尺寸(hdpi,XHDPI,xxhdpi ....)或宽度/高度概念(sw,sh等文件夹结构)设计了布局。我们有多种布局可以支持多种屏幕尺寸。有时他们大部分只是hdpi的副本,因为Android设法正确地扩展了东西。
现在我们聘请了一位拥有5。5年经验的高级Android开发人员,他更喜欢只为所有屏幕尺寸编写一个布局。他认为这是最新的方式。他只写了一个布局,当涉及到图像时,他将它们添加到不同尺寸的不同可绘制文件夹(hdpi可绘制文件夹等)以匹配所有屏幕
目前我也很困惑地想我是否真的错过了行业标准,因为这个新人过去的用户界面看起来也不错。
对此有任何建议吗?
答案 0 :(得分:4)
到目前为止,我们为每种屏幕尺寸设计了布局(hdpi,XHDPI,xxhdpi ....)
这些不是尺寸。那些是密度。
或宽度/高度概念(sw,sh等文件夹结构)
那些是大小。
他只写一个布局,当涉及到图像时,他将它们添加到不同尺寸的可绘制文件夹(hdpi可绘制文件夹等)以匹配所有屏幕......我是否真的错过了行业标准
自2009年底引入屏幕密度概念以来,基于密度的布局一直是代码味道。基于密度的可绘制数据是同一时间段内的最佳实践。
就“一个布局”部分而言,在所有情况下都可能不实用:
不同的方向(纵向与横向)可能需要不同的布局(例如,在不滚动的情况下使表格适合)
屏幕尺寸大不相同(例如手机与平板电脑)可能需要不同的布局
基本上不同的UI方法(例如,手表与手持移动设备与电视)通常需要不同的布局
答案 1 :(得分:0)
您应该在尺寸文件中修复视图的高度和宽度,以获得各种分辨率示例:
values folder:
90dp 75dp
values-hdpi文件夹:
<dimen name="width">100dp</dimen>
<dimen name="height">85dp</dimen>
像这样对于mdpi,xhdpi,xxhdpi并将其放在你的视图中。
机器人:layout_width = “@扪/宽度” 机器人:layout_height = “@扪/高度”