我有一些问题要解决。
在纵向中,我需要简单的 listView,每行都有单独的按钮。在横向中,我需要将视图划分为两个区域。首先(假设在左边)是前面提到的 ListView。第二个区域包含几个在单击 ListView 后填充的 TextView。
问题:
为了区分陆地和纵向,我将使用 layout-land 和 layout-port 文件夹。但在横向方向中,将很少有额外的控件。在 onCreate 方法中检查方向而不初始化其他控件就足够了吗?
如何获得上述横向视图的描述?
提前谢谢。
我有一些问题要解决。
在纵向中,我需要简单的 listView,每行都有单独的按钮。在横向中,我需要将视图划分为两个区域。首先(假设在左边)是前面提到的 ListView。第二个区域包含几个在单击 ListView 后填充的 TextView。
问题:
为了区分陆地和纵向,我将使用 layout-land 和 layout-port 文件夹。但在横向方向中,将很少有额外的控件。在 onCreate 方法中检查方向而不初始化其他控件就足够了吗?
如何获得上述横向视图的描述?
提前谢谢。
你可以按照你说的方法来做。另一种可能性是在两种布局中都包含所有元素,但是在纵向方向中,您可以隐藏其中的一些(通过将宽度/高度设置为 0,或通过将android:visibility设置为 2(消失))。
您可以使用水平 LinearLayout 来获得两个并排的区域。LinearLayout 的第一个孩子将是您的 ListView。LinearLayout 的第二个子项可以包含您想要的额外 TextView。
我认为 Fragments 的使用适合您想要实现的布局。这是指向您可能会发现有用的教程的链接。 http://mobile.tutsplus.com/tutorials/android/android-sdk_fragments/
希望有帮助。:)
您不需要在 onCreate 方法中检查方向,因为当方向改变时,android 操作系统会加载整个活动。
你只需要做一件事。UI
在横向和纵向 xml 文件中提供相同的 id。这就足够了