我在这里有这些按钮,我希望它们都有一些动画点击。 长大一点然后恢复正常。
以下是按钮xml代码。
<ImageButton
android:layout_width="165dp"
android:layout_height="60dp"
android:text="next"
android:id="@+id/next"
android:src="@drawable/next"
android:background="@android:color/transparent"
android:layout_alignParentBottom="true"
android:layout_alignRight="@+id/linearLayout"
android:layout_alignEnd="@+id/linearLayout" />
<ImageButton
android:layout_width="170dp"
android:layout_height="60dp"
android:text="confirm"
android:src="@drawable/confirm"
android:background="@android:color/transparent"
android:id="@+id/confirm"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentBottom="true"
/>
这些按钮位于一个activity_main.xml文件中。
有人可以帮我向我展示一些我应该做些什么来实现它吗?
非常感谢你的时间。
答案 0 :(得分:1)
在按钮的onclick中,我们使用F12 Developer Tools
方法启动我们想要使用的动画。我们首先使用Inline style
view.startAnimation()
现在在anim文件夹下创建一个名为button_click.xml的文件或任何你想要命名的文件。
动画/ button_click.xml
AnimationUtils.loadAnimation()
答案 1 :(得分:1)
使用Animator
可以轻松实现目标:
findViewById(R.id.next).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Animator scale = ObjectAnimator.ofPropertyValuesHolder(v,
PropertyValuesHolder.ofFloat(View.SCALE_X, 1, 1.5f, 1),
PropertyValuesHolder.ofFloat(View.SCALE_Y, 1, 1.5f, 1)
);
scale.setDuration(1000);
scale.start();
}
});