我可以立即在其他地方移动片段而不重新创建任何内容

时间:2018-02-28 06:03:08

标签: android android-fragments

这可能听起来很愚蠢,但我可以这样做吗?我搜索了一下,this说“重新附加片段......导致其视图层次结构被重新创建,附加到UI,并显示。”,可能意味着片段的UI重建失去国家和其他东西。

我之所以要这样做,是因为我希望实现类似谷歌地图底层的东西。唯一的标题部分显示在底部,但我们可以将其向上滑动,它将成为底部工作表。我认为当只显示标题部分时,它实际上并不是底页,因为很难准确显示底部工作表的那一部分。我认为谷歌地图已将标题部分单独放置,并将其替换为底部工作表,其顶部看起来就像标题部分,当向上滑动时。

所以,为了达到类似的效果,我想我会创建一个UI集群作为片段,当用户开始向上滑动时,我放置一个底片,其中peek大小设置为片段的高度,并将片段移动到底部工作表的顶部,以便可以将其滑动。

但我希望保留片段的所有内容而不重新创建任何内容,就好像我拍摄片段并立即移入片段一样。这是可能的,还是应该保存状态并在重新创建片段的UI时恢复它们?

1 个答案:

答案 0 :(得分:0)

是。将片段视为View,并根据行为使用ObjectAnimator或任何动画类。 (上滑动画可以解决问题)

注意:即使您在主布局上显示20%的部分,片段也会首先初始化。 州将保持不变这确实可以回答您的问题。

以下是您工作的类似示例。 Reference