问题是我的三个奖励容器,视频和mvp容器从下到上而不是从上到下进行动画制作 Three Containers are highlighted in image
动画代码
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="650"
android:startOffset="1000">
<translate
android:fromYDelta="300"
android:toYDelta="0"/>
<alpha
android:fromAlpha="0.0"
android:toAlpha="1.0"/>
</set>
既然YDelta的值是300,而不是它减小到0,则动画应该从上到下进行动画制作,但实际上是从下到上的动画,为什么是这样?
MainActivity代码
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:background="#EAEFF9"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:text="@string/title"
android:textSize="25sp"
android:textColor="@color/colorBlack"
android:fontFamily="@font/mmedium"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent"
android:id="@+id/tvTitle" android:layout_marginStart="8dp" android:layout_marginEnd="8dp"
android:layout_marginTop="68dp" app:layout_constraintTop_toTopOf="parent"/>
<TextView
android:textSize="15sp"
android:lineSpacingExtra="7dp"
android:textAlignment="center"
android:text="@string/subtitle"
android:layout_width="250dp"
android:textColor="@color/colorSilver"
android:layout_height="wrap_content"
android:id="@+id/tvSubTitle"
android:fontFamily="@font/mlight"
android:layout_marginTop="20dp"
app:layout_constraintTop_toBottomOf="@+id/tvTitle" android:layout_marginStart="8dp"
app:layout_constraintStart_toStartOf="parent" android:layout_marginEnd="8dp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.497"/>
<ImageView
android:contentDescription="Playing Cards"
android:layout_width="180dp"
android:layout_height="150dp" app:srcCompat="@drawable/ic_cards"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent" android:id="@+id/ivCard" android:layout_marginTop="20dp"
app:layout_constraintTop_toBottomOf="@+id/tvSubTitle" android:layout_marginEnd="8dp"
android:layout_marginStart="8dp" app:layout_constraintHorizontal_bias="0.502"/>
<LinearLayout
android:weightSum="3"
android:layout_marginStart="20dp"
android:layout_marginEnd="20dp"
android:layout_marginTop="20dp"
android:orientation="horizontal"
app:layout_constraintTop_toBottomOf="@id/ivCard"
android:id="@+id/parentContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:id="@+id/rewardContainer"
android:orientation="vertical"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content">
<LinearLayout
android:gravity="center"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:orientation="vertical"
android:background="@drawable/cardbg"
android:layout_width="match_parent"
android:layout_height="120dp">
<TextView
android:textAlignment="center"
android:fontFamily="@font/mmedium"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/colorBlack"
android:text="23"/>
<TextView
android:textAlignment="center"
android:fontFamily="@font/mmedium"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Rewards"/>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_weight="1"
android:id="@+id/videoContainer"
android:layout_width="0dp"
android:layout_height="wrap_content">
<LinearLayout
android:gravity="center"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:orientation="vertical"
android:background="@drawable/cardbg"
android:layout_width="match_parent"
android:layout_height="120dp">
<TextView
android:textAlignment="center"
android:fontFamily="@font/mmedium"
android:layout_width="wrap_content"
android:textColor="@color/colorBlack"
android:layout_height="wrap_content"
android:text="12"/>
<TextView
android:textAlignment="center"
android:fontFamily="@font/mmedium"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Videos"/>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/mvpContainer"
android:orientation="vertical"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content">
<LinearLayout
android:gravity="center"
android:layout_marginStart="10dp"
android:layout_marginEnd="10dp"
android:orientation="vertical"
android:background="@drawable/cardbg"
android:layout_width="match_parent"
android:layout_height="120dp">
<TextView
android:textAlignment="center"
android:fontFamily="@font/mmedium"
android:textColor="@color/colorBlack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="5"/>
<TextView
android:textAlignment="center"
android:fontFamily="@font/mmedium"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="MVP"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
<Button
android:text="Next Course"
android:textColor="#FFF"
android:layout_width="200dp"
android:background="@drawable/btnbg"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent"
android:id="@+id/btnNextCoruse" android:layout_marginEnd="8dp" android:layout_marginStart="8dp"
android:layout_marginTop="50dp" app:layout_constraintTop_toBottomOf="@+id/parentContainer"/>
答案 0 :(得分:0)
很正常。 0,0点是顶部/左侧。
因此,从300到0会将对象从底部移动到顶部。
答案 1 :(得分:0)
“您可以从上到下使用它”
<translate
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:fromYDelta="-300"
android:toYDelta="0"
/>
答案 2 :(得分:0)
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="650"
android:startOffset="1000">
<translate
android:fromYDelta="-300"
android:toYDelta="0"/>
<alpha
android:fromAlpha="0.0"
android:toAlpha="1.0"/>
</set>
答案 3 :(得分:0)
在Android中,最左上角的位置将是(0,0) x值将向左增加,Y值将向底部增加
请根据其更新代码
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="650"
android:startOffset="1000">
<translate
android:fromYDelta="Y_START_POINT"
android:toYDelta="Y_END_POINT"/>
<translate
android:fromXDelta="X_START_POINT"
android:toXDelta="X_END_POINT"/>
<alpha
android:fromAlpha="0.0"
android:toAlpha="1.0"/>