Android布局 - 适用于所有屏幕尺寸的布局?

时间:2016-08-20 10:51:40

标签: android android-layout

我们对Android布局设计的最佳实践感到困惑。到目前为止,我们为每种屏幕尺寸(hdpi,XHDPI,xxhdpi ....)或宽度/高度概念(sw,sh等文件夹结构)设计了布局。我们有多种布局可以支持多种屏幕尺寸。有时他们大部分只是hdpi的副本,因为Android设法正确地扩展了东西。

现在我们聘请了一位拥有5。5年经验的高级Android开发人员,他更喜欢只为所有屏幕尺寸编写一个布局。他认为这是最新的方式。他只写了一个布局,当涉及到图像时,他将它们添加到不同尺寸的不同可绘制文件夹(hdpi可绘制文件夹等)以匹配所有屏幕

目前我也很困惑地​​想我是否真的错过了行业标准,因为这个新人过去的用户界面看起来也不错。

对此有任何建议吗?

2 个答案:

答案 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 = “@扪/高度”