什么是最灵活的布局?

时间:2010-12-10 16:38:17

标签: android layout

在不同设备上支持应用程序的最佳布局是什么(屏幕大小)?

修改

我不只是在谈论调整布局的大小,显然操作系统会自动完成。我正在谈论在布局中重新定位对象。

通过重新定位我的意思是根据屏幕的大小移动对象。例如,我为更大的屏幕创建了我的布局,看起来很棒,但是当我在较小的设备(较小的屏幕)上运行应用程序时,我的一些用户界面元素超出了我的屏幕范围。

4 个答案:

答案 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是导入布局....