为了使android应用更具吸引力,我们添加了很多内容,动画是使应用更具吸引力并使用户参与该应用的最佳方法之一。因此,在本文中,我们将向Button添加反弹动画。可以使用本教程将Bounce动画添加到android studio中的任何视图,例如ImageView , TextView , EditText , 下面提供了一个示例GIF,以使我们对本文中要做的事情有一个了解。
创建弹跳动画的步骤
步骤1:建立新专案
要在Android Studio中创建新项目,请参阅如何在Android Studio中创建/启动新项目。请注意,尽管我们将使用Java语言来实现该项目,但请选择Java作为语言。
步骤2:设计UI
- 转到应用程序-> res,右键单击res文件夹,然后单击新建-> Android Resource Directory并创建一个动画目录。
- 然后右键单击anim文件夹,然后转到“新建”->“动画资源文件”并创建一个bounce.xml文件。
- bounce.xml文件包含用于对Button进行动画处理的动画 在下一步中。下面给出了bounce.xml的完整代码。
bounce.xml
activity_main.xml
MainActivity.java
import android.os.Bundle;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.Button;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// loading Animation from
final Animation animation = AnimationUtils.loadAnimation(this, R.anim.bounce);
// getting the Button from activity_main.xml file
final Button button = findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// start the animation
button.startAnimation(animation);
}
});
}
}
- 现在转到应用程序-> res->布局-> activity_main.xml文件,并添加一个简单的Button,我们要对其进行动画处理。这是activity_main.xml文件的代码。
activity_main.xml
步骤3:使用MainActivity。 Java文件
- 打开MainActivity。 Java调用并在onCreate()方法内部从anim文件夹中获取动画。
// loading Animation from
final Animation animation = AnimationUtils.loadAnimation(this,R.anim.bounce);
- 获取我们在activity_main.xml文件中创建的Button的引用
// getting the Button from activity_main.xml file
final Button button= findViewById(R.id.button);
- 创建内部的onClick一个OnClickListener的按钮和startAnimation()。
// clickListener for Button
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// start the animation
button.startAnimation(animation);
}
});
- MainActivity的完整代码。 Java文件如下。
主要活动。Java
import android.os.Bundle;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.Button;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// loading Animation from
final Animation animation = AnimationUtils.loadAnimation(this, R.anim.bounce);
// getting the Button from activity_main.xml file
final Button button = findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// start the animation
button.startAnimation(animation);
}
});
}
}
输出:在模拟器上运行
资源:
- 从Github下载完整项目
- 下载Apk文件