【问题标题】:Start Motion Layout automatically (Android Studio)自动启动 Motion Layout (Android Studio)
【发布时间】:2020-07-14 15:08:25
【问题描述】:

我想制作一个动画启动画面,当您启动应用程序时,Motion Layout 应该会自动启动。如何让 Motion Layout 自动启动?

【问题讨论】:

  • 我想你应该澄清一下什么是动态场景?你指的是动态布局吗?
  • 是的,我的意思是动态布局。

标签: android-studio splash-screen android-motionlayout


【解决方案1】:

将 autoTransition="animateToEnd" 行添加到您的过渡中

<Transition
    motion:constraintSetStart="@+id/start"
    motion:constraintSetEnd="@+id/end"

    motion:autoTransition="animateToEnd"

    motion:duration="1000">

【讨论】:

  • 太好了,这正是我所需要的。谢谢!
【解决方案2】:

首先,在 xml 中为 MotionLayout 分配一个 ID。

然后在您的活动中编写以下代码:

MotionLayout motionLayout = findViewById(R.id.motion_layout);     
motionLayout.transitionToEnd();

如果你想反向转换使用这行代码:

motionLayout.transitionToStart();

【讨论】:

    【解决方案3】:

    motion:transitionFlags="disableIntraAutoTransition" 将避免在实际状态以编程方式或由用户更改时重新设置动画。

        <Transition
            motion:constraintSetEnd="@+id/end"
            motion:constraintSetStart="@id/start"
            motion:autoTransition="animateToEnd"
            motion:transitionFlags="disableIntraAutoTransition"
            motion:duration="1200">
        </Transition>
    

    【讨论】:

      猜你喜欢
      • 2020-09-23
      • 2021-10-09
      • 2023-02-01
      • 2016-12-19
      • 1970-01-01
      • 2015-02-21
      • 2021-07-17
      • 2013-07-04
      • 1970-01-01
      相关资源
      最近更新 更多