Android的材料过渡设计

问题描述 投票:0回答:1

我有这个应用程序,其中包含1个活动和1个片段。我们将其命名为“片段A”。因此,“片段A”由3个按钮BtnA,BtnB和BtnC组成。当我单击片段A中的BtnA时,片段B将替换该片段A。在片段B内,我将有另外3个按钮BtnD,BtnE,BtnF。我正在考虑利用“材质过渡”并制作以下​​动画:

Transitions.gif(来源:googledrive.com

我希望它至少与Android Api 14向下兼容。因此,我进行了研究,并使用了Transitions-Everywhere。似乎我无法使用此功能执行“片段-片段”过渡。因此,我想到了改用其他方法。这是我认为可以完成工作的一些方法:

  1. 改为进行活动-活动(这似乎有点矫kill过正,因为我实际上是在活动中重用一些东西)
  2. 在1个活动中进行所有操作,并使用场景带来按钮在:
    1. 在活动中具有这6个按钮。
    2. 活动中只有3个按钮,单击BtnA时,将BtnA,BtnB,BtnC更改为BtnD,BtnE,BtnF。

那么设计应该如何?我需要特别考虑吗?我更赞成选项2.1,即1个活动中的6个按钮,但不确定是否建议这样做。有什么建议吗?

提前感谢!

android android-fragments material-design android-transitions
1个回答
0
投票

我是《无处不在的转型》的作者,所以也许我可以提供帮助。在这种情况下使用不同片段的真正原因是什么?片段过渡暂时不被移植,为此我没有太多的空闲时间。

您可以通过这种方式执行转换:

TransitionSet transitionSet = new TransitionSet();
transitionSet.addTransition(new Slide(Gravity.BOTTOM));
transitionSet.addTransition(new ChangeBounds());
TransitionManager.beginDelayedTransition(buttonsContainer, transitionSet);
btnA.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
                ViewGroup.LayoutParams.MATCH_PARENT));
btnB.setVisibility(View.GONE)
btnC.setVisibility(View.GONE)
© www.soinside.com 2019 - 2024. All rights reserved.