添加平板电脑支持:片段及活动主/(安卓)
问题描述:
我实施类似于Fragments (Android Developers)描述的一个片段层级。 添加平板电脑支持:片段及活动主/(安卓)
在纵向应用程序应该表现为在第二种情况下片剂ADITION。我的问题是处理从一个方向到另一个方向的交易。
我考虑的第一个想法是:
- 从风景到人像:当活动前进到肖像:删除片段B向视图。对于结果启动活动B传递propper值恢复原始片段B态
- 从人像到风景:当活动B去画像。完成(结果中包含片段2状态)。具有结果的活动A恢复并将片段B添加到其布局。
但是这个解决方案相当复杂,我认为它可能不是一个好主意。我考虑的替代解决方案只有一个活动。该活动布局是:
<FrameLayout>
<LinearLayout>
<Fragment A>
<Fragment B>
<Slot>
对于小装置:
- 该应用程序将删除片段B和当选择了项目的片段添加到返回堆栈到“时隙”
对于平板电脑:
- 使用fragmentTransactions片段B从其位置移动到t他“插槽”使用堆栈中正确的行为与方向改变
我认为第二个选项听起来更好,但是,就是这样做的正确方法是什么?
感谢
答
如果你想听我的意见,我会说这取决于太多因素。我认为你应该坚持你觉得可以管理的程度。这也取决于你的应用程序的屏幕流程有多复杂。
在一个活动保持它,对我来说,一个好主意,如果你没有那么多的碎片来管理。这种方法的一个优点是你不需要摆弄两种不同活动的生命周期。
不管怎样,找到实现复杂的是方法相关的指标,你打算什么你不会管理的未来。
希望有帮助!
答
我不明白你为什么会想这样做在这样一个复杂的方式。在平板电脑上进行一项活动,在手机上进行两项活动。有第一个活动实现一个侦听器,如果列表片段的项目被点击,将触发。活性知道如果它是内部单或双窗格模式,使得onItemSelected回调方法内,都它或者在一个窗格中模式的情况下启动一个新的活动,或更换的片段,以片剂的情况下。
你也可以看到这一点,创建一个新的项目时,使用主/详细信息模板。