【问题标题】:Animation not working on android activity动画不适用于android活动
【发布时间】:2021-07-30 07:44:43
【问题描述】:

我正在尝试在活动开始时为视图设置动画,但它不起作用。

activity_main.xml

<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/dark_blue"
tools:context=".MainActivity">


<TextView
    android:id="@+id/textView"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:text="Bull Rent"
    android:textAlignment="center"
    android:textColor="@color/white"
    android:textSize="50dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/textView2"
    android:text="Tagline"
    android:textColor="@color/white"
    android:textSize="20sp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/textView" />

</androidx.constraintlayout.widget.ConstraintLayout>

top_animation.xml(在anim目录下)

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"

android:duration="850"
android:startOffset="100">

<translate
    android:fromXDelta="-100"
    android:fromYDelta="0"/>

<alpha
    android:fromAlpha="0.0"
    android:toAlpha="1.0" />

</set>

MainActivity.kt

class MainActivity : AppCompatActivity() {

private val binding by viewBinding(ActivityMainBinding::inflate)
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)

    //hide the status bar
    @Suppress("DEPRECATION")
    window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN)

    setContentView(R.layout.activity_main)
    val topAnimation = AnimationUtils.loadAnimation(this, R.anim.top_animation)
    binding.textView.startAnimation(topAnimation)
    binding.textView2.startAnimation(topAnimation)

 }

}

它在真实设备和模拟器上都没有显示动画......不知道问题出在哪里。 我已经批判性地查看了它,但无法弄清楚,也进行了搜索,但似乎无法看到我的错误来自哪里。是否有库或者我们需要在 android studio 中的某处启用动画。

其他应用动画在我的手机上运行良好。所以这不是设备问题。

【问题讨论】:

    标签: android xml android-studio kotlin animation


    【解决方案1】:

    出于一些奇怪的原因(我不知道)。这是通过 viewBinding 访问视图时引起的。动画是行不通的。

    当我切换到通过 findViewById 访问视图时,它起作用了!

    因此,通过findViewById 访问您的视图,它会起作用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多