我有一个要设置动画的复选框,例如当用户点击复选框时,它将显示动画。如果我使用xml进行设置,则它将在初始显示时运行动画,但是我希望动画仅在用户选中复选框时运行。只有以编程方式设置它才有可能。
我还尝试过的:-
<CheckBox
android:id="@+id/_like_heart"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="4dp"
android:background="@mipmap/ic_user_heart"
android:button="@null"
android:checked="false"
android:stateListAnimator="@animator/enlarge" />
有没有其他选择可以支持较低版本的android。
答案 0 :(得分:0)
Ref:How to use StateListAnimator?
在Android L
中,为View添加了新的xml属性:
android:stateListAnimator :
设置视图的基于状态的动画制作器。
另外,用于实例化StateListAnimator对象programmatically
的新方法是:
loadStateListAnimator(Context context, int id)
已添加到AnimatorInflater
中。
这些可以在Android L开发者预览文档包中找到。
Ex
StateListAnimator stateListAnimator = AnimatorInflater.loadStateListAnimator(this,
R.anim.enlarg);
yourCheckbox.setStateListAnimator(stateListAnimator);
更多调查,请访问https://developer.android.com/reference/android/animation/StateListAnimator
答案 1 :(得分:0)
在您的复选框侦听器上添加此代码段
StateListAnimator stateListAnimator = AnimatorInflater.loadStateListAnimator(this,
R.anim.my_anim);
yourCheckbox.setStateListAnimator(stateListAnimator );