我正在计划我的第一个真正的Android应用程序,我希望它是一个通用的应用程序(平板电脑和手机)。布局将是由前一个列表视图填充的三个列表视图(列表一个总是具有相同的项目列表,列表2将基于列表一个选择填充,列表三将基于列表一和两个选择填充)。选择列表3中的项目后,将显示有关该项目的详细信息。仅供参考,数据位于XML文件(包含层次结构)中,详细信息是叶节点。
我计划有两种布局。对于平板电脑,我将在同一屏幕上拥有所有三个列表视图和详细信息。对于手机,我将让每个列表占据整个屏幕,当一个项目处于选中状态时,幻灯片转换到下一个列表视图(导航在顶部以便转到上一个列表以及有关选择的内容的信息(s)来自之前的名单)。当选择第三个列表中的项目时,显示详细信息页面,该页面还将有一个重新开始的按钮(即返回第一个列表视图)。
我的平板电脑视图工作得非常好,因为这是最简单的(只有一个屏幕,没有过渡) - 所有这些都在layout / main.xml中。我也为不同大小的屏幕(布局,布局大,布局小,布局-xlarge)提供了不同的布局,所有这些布局都具有完全相同的main.xml。
所以,最后我的问题...如何在具有不同用户体验的同时使用相同的代码填充列表?我可以看到两个选项(请添加更多/更好的选项)
对于手机,我是否应该继续拥有一个布局文件(main.xml),并且只需将所有三个列表和详细信息放在彼此之上并通过幻灯片转换显示/隐藏小部件? (即,首先只有第一个列表视图可见,第二个列表视图被隐藏,第三个列表视图被隐藏,细节被隐藏)
我应该为手机上的每个屏幕都有一个布局xml(main.xml - 初始列表视图,list2.xml,list3.xml和details.xml)?
为了确定它是否是平板电脑,我计划使用Google I / O应用程序中的代码 Developing an universal android application (phone and tablet)
编辑(2011/11/29)
找到一些关于碎片的好的在线资源:
http://android-developers.blogspot.com/2011/02/android-30-fragments-api.html
http://portabledroid.wordpress.com/2011/06/22/25/
http://portabledroid.wordpress.com/2011/06/23/multi-platform-fragments-part-ii/
和随附的视频:
http://www.youtube.com/watch?v=4BKlST82Dtg