我在代码中使用android.animation.AnimatorListenerAdapter类来收听动画。例子:
downView.animate().translationX(-mViewWidth).setDuration(mAnimationTime).
setListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationStart(
Animator animation) {
boolean real_dismiss = true;
performDismiss(
//some code
)
}
我使用了nineoldandroids的向后兼容性库,动画工作得很好,但我得到以下错误,这不能让我运行我的代码,在我的监听器:
ViewPropertyAnimator类型中的setListener(Animator.AnimatorListener)方法不适用于参数(new AnimatorListenerAdapter(){})
当我使用API级别11时,代码工作正常。我以前的import语句:
//import android.animation.Animator;
//import android.animation.AnimatorListenerAdapter;
//import android.animation.ValueAnimator;
我的新import语句:
import com.nineoldandroids.animation.*;
import com.nineoldandroids.*;
我刚刚遇到了同样的问题,找到了Jake Wharton的SwipeDismissListener
实现:
第156行,Jake使用com.nineoldandroids.view.ViewPropertyAnimator.animate(View arg0)
执行相同的功能
animate(downView)
.translationX(-mViewWidth)
.setDuration(mAnimationTime)
.setListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationStart(Animator animation) {
boolean real_dismiss = true;
performDismiss(//some code)
}
不应该有任何错误