在不同设备上支持应用程序的最佳布局是什么(屏幕大小)?
修改
我不只是在谈论调整布局的大小,显然操作系统会自动完成。我正在谈论在布局中重新定位对象。
通过重新定位我的意思是根据屏幕的大小移动对象。例如,我为更大的屏幕创建了我的布局,看起来很棒,但是当我在较小的设备(较小的屏幕)上运行应用程序时,我的一些用户界面元素超出了我的屏幕范围。
答案 0 :(得分:4)
没有“最佳”布局。几乎所有类型的布局都将扩展到不同的设备(Android是围绕这个概念设计的),而不是AbsoluteLayout,无论如何都弃用了。
如果您要插入一行(水平或垂直)内容,则最好使用LinearLayout。使用诸如dip值,fill_parent或wrap_content之类的值将自动调整其内容或屏幕大小。
Vladimir指出,RelativeLayout最适用于视图相对于布局中其他对象定位的布局。例如,位于“提交”按钮旁边的TextView就是一个常见的例子。
FrameLayout是AbsoluteLayout的替代品;您可以将对象叠加在一起,只需从框架的两侧指定边距偏移。
TableLayout听起来就是Table风格设计的布局。您可以拥有多个行和列,并将某些列设置为拉伸以适合显示的大小,这样无论屏幕大小如何,布局都符合您的设计。
编辑:如果您的对象落在屏幕区域之外,请尝试将根布局包装在<ScrollView>
中。这将允许布局可滚动。
e.g。
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<RelativeLayout
..... //and so on
</RelativeLayout>
</ScrollView>
答案 1 :(得分:1)
所有布局在尺寸方面都很灵活......规则是:不要使用AbsoluteLayout
。就是这样。
关于重新定位问题......好吧,使用总是倾向而不是像素,你很高兴。同样,不要使用AbsoluteLayout
,其余的布局应该适用于每个屏幕尺寸。有时,您可以通过将布局包装在ScrollView
中来预测这些“消失的行为”。
答案 2 :(得分:0)
RelativeLayout是您应该关注的内容。它可以轻松调整元素相对于邻居的大小。只需确保包含所有分辨率和密度的drawable
答案 3 :(得分:0)
LinearLayout,RelativeLayout,FrameLayout是导入布局....