Android如何确定使用哪种布局

时间:2013-07-27 02:57:49

标签: android layout

因此,我知道您可以为不同的屏幕和方向定义不同的布局。我遇到的问题是抓住时会使用的。
我正在考虑三种设备(例如):

  • Google Nexus 7
  • Samsung Galaxy S3
  • 一些非常小的手机。
  • 一开始,main.xml中有res/layout,这是纵向模式中使用的默认布局。然后,您可以在main.xml中定义res/layout-land,这是手机在横向模式下保持时使用的默认布局。
    这两种布局将用于三星Galaxy S3和Nexus 7以及小型手机,因为我没有定义任何特定的内容。

    现在,我想定义一个布局,特别是小手机肖像模式,以及上面提到的布局。它将在res\layout-small\main.xml

    之下

    我的问题是:在横向模式下如何选择小屏幕的布局?

    1 个答案:

    答案 0 :(得分:0)

    @Simon链接非常有用。除此之外,Android NewsReader.zip页面上的示例应用程序Supporting Different Screen Sizes也会有所帮助。如果您阅读Use Orientation Qualifiers部分,则会告诉您要执行的操作。

    您可以在res/layout/目录中的XML文件中定义所有布局。然后,为了将每个布局分配给各种屏幕配置,应用程序使用布局别名将它们与每个配置相匹配。例如。对于小屏幕肖像文件:

    res/values-sw600dp-port/layouts.xml

    其内容可以是:

    <resources>
        <item name="main_layout" type="layout">@layout/small_screen_portrait</item>
        <bool name="has_two_panes">false</bool>
    </resources>
    

    您可以查看示例应用以获取更多信息。希望这可以帮助。