对于所有各种屏幕尺寸(纵向和横向),最好甚至用RelativeLayout
包裹传统布局(LinearLinear
,ScrollView
等)屏幕下方延伸的内容?有更好的方法吗?
更新问题:自定义膨胀视图如何?同样的方法适用吗?
答案 0 :(得分:2)
我认为我不敢说用LinearLayout
包装每个ScrollView
是“最佳实践”。
也就是说,以我自己的经验,即使我知道自己的内容适合大多数手机,我还是经常使用ScrollView
+ LinearLayout
创建布局。之所以这样做,是因为(1)我想同时支持纵向和横向(而横向通常没有足够的高度来显示所有内容)和(2)因为我想支持用户可能拥有的任何设备(有些人确实有非常小的手机)。
诀窍是区分您的LinearLayout
只是将屏幕切成小块的情况与您的LinearLayout
是许多具有各自固定高度的视图的父级的情况之间的区别。两个Button
彼此相邻,每个占屏幕宽度的50%,显然不希望它们周围有ScrollView
。但是,即使所有八个都适合放在您的个人设备的屏幕上,将八个EditText
字段彼此重叠的形式也可以很好地包裹在ScrollView
中。
在大型手机上使用“多余”或“无用” ScrollView
的弊端是如此之小,以至于我从不担心。一个额外的View
实例不会影响性能或占用过多的内存。不过,使应用程序在小屏幕上可用的好处值得。
答案 1 :(得分:0)
可能的情况很少: 如果您的布局是静态布局,仅是按钮,文本视图等,则您可以在Android Studio中预览不同的屏幕尺寸,并验证该布局在支持的设备上是否可以正常工作。 如果您的布局是动态的,例如获取动态数据集的ListView,RecyclerView,则始终最好将ScrollView用作父级。
这能回答您的问题吗?如果需要进一步说明,请回复。