如何检测到有大屏?
解决方案 -
让应用检测是否有大屏幕。
- 为不同的屏幕尺寸定义不同的布局文件。
- 确保您的布局可以适当调整大小以适应屏幕
- 根据屏幕配置提供适当的 UI 布局
- 确保将正确的布局应用于正确的屏幕
阅读 - Multiple Screen Support 和 Support Screen training docs。
如何让主要活动将两个片段加载到单个活动中
如果是这样?
解决方案 -
您可以在单个活动中组合多个片段以构建多窗格 UI 并在多个活动中重用一个片段。当您在不同的布局中定义了片段容器时,这非常有用。您只需要替换为任何布局中的任何其他片段。
当您导航到当前布局时,您可以使用该容器的 id 将其替换为您想要的片段。
您也可以使用popBackStack() 方法返回到backStack 中的上一个片段。为此,您需要使用 addToBackStack() 在堆栈中添加该片段,然后使用 commit() 进行反映。这与当前在顶部的顺序相反。
说明:
- 让我们想用两个片段来处理横向和纵向
设备的模式。
- 接下来根据片段的数量,创建将扩展的类
片段类。 Fragment 类有自己的回调
职能。您可以覆盖任何基于您的功能
要求。
- 对应每个片段,你需要创建布局文件
在 XML 文件中。这些文件将具有已定义片段的布局。
- 最后修改activity文件来定义替换的实际逻辑
片段根据您的要求。
在 Activity 中创建两个片段的步骤 -
1 您将使用 Eclipse IDE 创建一个 Android 应用程序,并将其命名为 MyFragments,位于包 com.example.myfragments 下,Activity 为空白。
2 修改主Activity文件MainActivity.java如下代码所示。在这里,我们将检查设备的方向,并相应地在不同的片段之间切换。
3 在 com.example.myfragments 包下创建两个 java 文件 PM_Fragment.java 和 LM_Fragement.java 来定义你的片段和相关的方法。
4 创建布局文件res/layout/lm_fragment.xml 和res/layout/pm_fragment.xml 并为这两个片段定义布局。
5 修改res/layout/activity_main.xml文件的detault内容以包含两个片段。
6 在res/values/strings.xml文件中定义所需的常量
7 运行应用程序以启动 Android 模拟器并验证应用程序中所做更改的结果。
阅读 - FragmentTransaction 和 Android Fragments。