我想知道如何使按钮开始使用ANDROID进行动画制作

时间:2018-07-18 22:31:27

标签: android animation button android-animation onclicklistener

我在drawable文件夹中有简单的4张工程图(称为帧1,2,3,4)和动画xml(称为animationf)文件。

我的布局中有一个按钮,我想让它一键启动动画。我的按钮不可见,因此当有人触摸智能手机屏幕时,它将开始我的动画。

我相信我必须在OnActivLestener中使用某些东西到我的MainActivity Java文件中。

MainActivity.java:

package e.ferreira.explodestress;

import ...

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

    }
}

activity_main.xml:

<?xml version="1.0" encoding="utf-8"?>

<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:id="@+id/ConstraintLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#FFFFFF"
    android:maxWidth="50000dp"
    android:maxHeight="50000dp"
    android:minWidth="1dp"
    android:minHeight="1dp"
    android:visibility="visible"
    tools:context=".MainActivity">

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:scaleType="fitXY"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
    <Button
        android:id="@+id/button"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="@string/start_button"
        android:visibility="invisible"/>

</androidx.constraintlayout.widget.ConstraintLayout>

animationf.xml:

<?xml version="1.0" encoding="utf-8"?>

<animation-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:drawable="@drawable/frame1"
        android:duration="125"/>
    <item
        android:drawable="@drawable/frame2"
        android:duration="125"/>
    <item
        android:drawable="@drawable/frame3"
        android:duration="125"/>
    <item
        android:drawable="@drawable/frame4"
        android:duration="125"/>
</animation-list>

1 个答案:

答案 0 :(得分:0)

首先,您需要通过将按钮分配给变量来控制按钮:

Button yourButton = findViewById(R.id.buttonId);

然后将onClick侦听器添加到按钮:

yourButton.setOnClickListener(new View.OnClickListener() {
     public void onClick(View v) {
         // Code for displaying your frames
     }
 });