【问题标题】:Difference between creating a tablet layout variation and creating a folder for tablet layout创建平板电脑布局变体和为平板电脑布局创建文件夹之间的区别
【发布时间】:2018-10-20 14:33:42
【问题描述】:

您好,我想问一下创建平板电脑布局变体和为布局创建文件夹(例如:“res/layout-w600dp/”)有什么区别?

很抱歉,我是为小型(手机/Android 手机)和大型(平板电脑)设备制作 Android 应用程序的新手。

有人可以帮帮我吗?我真的很难为平板电脑布局做些什么。我不知道当应用程序在平板电脑上运行时是否会自动显示平板电脑的布局,或者我必须在 java 部分中放置一些代码。我已经阅读了一些文档,但我不能完全理解它。对不起。

感谢您的帮助。

【问题讨论】:

    标签: android android-tablet-layout


    【解决方案1】:

    如果你有两个布局文件:

    res/layout/
        activity_main.xml
    
    res/layout-sw600dp/
        activity_main.xml
    

    您有一个调用setContentView(R.layout.activity_main) 的活动,您无需执行任何其他操作:第一个版本将加载到手机上,第二个版本将加载到平板电脑上。

    如果每个布局文件都有具有相同 ID 的视图(也许它们只是排列方式或大小不同),那么您可以执行任何您想要的逻辑,并且两者都可以使用。

    不过,通常情况下,平板电脑文件会包含手机版本不包含的视图。在这种情况下,您应该在尝试使用它们之前检查这些视图是否存在。想象一下,平板电脑版有视图android:id="@+id/right_panel",而手机版没有。你可以写:

    View rightPanel = findViewById(R.id.right_panel);
    
    if (rightPanel != null) {
        // do something for tablets
    }
    

    【讨论】:

    • 哦,我明白了。只是一些澄清先生将为平板电脑创建布局与创建新布局相同吗?或者我需要创建平板电脑布局变化?顺便说一句,先生,非常感谢您听到我的关心先生。
    • “创建新布局”与“平板电脑布局变化”是什么意思?我很乐意为您提供帮助,我只是不确定您在问什么
    • 您好本爵士,非常感谢您的帮助。我真的很困惑如何为平板电脑创建布局以及布局目录。我认为可以通过创建新的 xml 布局或在设计模式(?)(xml 文件模式?:文本或设计)中单击“创建平板电脑布局变体”来创建平板电脑的布局。
    • 啊。我不确定这些 Android Studio 选项,但只要您在 layout-swXXXdp 文件夹中有一个文件与您在 layout 文件夹中的文件同名,一切都会正常工作。
    • Sir Ben 谢谢你,非常感谢你的帮助。由于您的帮助,我对平板电脑的布局有了更多的了解。再次感谢您,先生,Ben 先生祝您有美好的一天。
    猜你喜欢
    • 2018-12-16
    • 1970-01-01
    • 1970-01-01
    • 2014-07-27
    • 1970-01-01
    • 2012-09-23
    • 2011-05-10
    • 2014-06-18
    相关资源
    最近更新 更多