📅  最后修改于: 2023-12-03 15:27:02.094000             🧑  作者: Mango
在 Android 开发中,CardView 是常用的视图容器之一,它提供了一个漂亮的圆角矩形布局,是一个灵活且易于定制的容器。而为 CardView 添加点击动画则可以提升用户交互体验,本文将介绍在 Android 中为 CardView 添加点击动画的方法。
在添加点击动画之前,我们需要先导入相关库文件,建议在 build.gradle 文件中添加以下依赖:
implementation 'androidx.cardview:cardview:1.0.0'
接下来我们可以为 CardView 添加点击动画代码,以下是实现点击动画的代码片段。
// 定义一个点击事件监听器
View.OnClickListener mClickListener = new View.OnClickListener() {
@Override
public void onClick(View v) {
// 为 CardView 添加缩放动画
ObjectAnimator animX = ObjectAnimator.ofFloat(v, "scaleX", 1.0f, 0.8f, 1.1f, 1.0f);
ObjectAnimator animY = ObjectAnimator.ofFloat(v, "scaleY", 1.0f, 0.8f, 1.1f, 1.0f);
animX.setDuration(100);
animY.setDuration(100);
AnimatorSet animSetXY = new AnimatorSet();
animSetXY.playTogether(animX, animY);
animSetXY.start();
}
};
// 在需要添加点击事件的 CardView 上设置点击事件监听器
cardView.setOnClickListener(mClickListener);
在该代码中,我们定义了一个点击事件监听器 mClickListener
,当监听到 CardView 被点击时,就会执行内部的代码块,即为 CardView 添加缩放动画效果。在 ObjectAnimator
中设置动画属性以及变化的数值,然后将两个动画一起执行即可。
添加以下依赖:
implementation 'androidx.cardview:cardview:1.0.0'
为 CardView 添加点击动画代码。
// 定义一个点击事件监听器
View.OnClickListener mClickListener = new View.OnClickListener() {
@Override
public void onClick(View v) {
// 为 CardView 添加缩放动画
ObjectAnimator animX = ObjectAnimator.ofFloat(v, "scaleX", 1.0f, 0.8f, 1.1f, 1.0f);
ObjectAnimator animY = ObjectAnimator.ofFloat(v, "scaleY", 1.0f, 0.8f, 1.1f, 1.0f);
animX.setDuration(100);
animY.setDuration(100);
AnimatorSet animSetXY = new AnimatorSet();
animSetXY.playTogether(animX, animY);
animSetXY.start();
}
};
// 在需要添加点击事件的 CardView 上设置点击事件监听器
cardView.setOnClickListener(mClickListener);
其中,mClickListener
为点击事件监听器,当监听到 CardView 被点击时,执行为 CardView 添加缩放动画。
至此,为 CardView 添加点击动画代码的过程已经讲解完毕,希望对你有所帮助!