我在按钮的ACTION_DOWN
和ACTION_UP
个事件中使用自定义动画。
但是,现在,我手动使用以下代码手动将OnTouchListener
设置为每个Button
:
myButton.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View yourButton, MotionEvent theMotion) {
Animation animation;
switch (theMotion.getAction()) {
case MotionEvent.ACTION_DOWN:
animation = AnimationUtils.loadAnimation(NickNameScreenActivity.this, R.anim.button_down);
myButton.startAnimation(animation);
break;
case MotionEvent.ACTION_UP:
animation = AnimationUtils.loadAnimation(NickNameScreenActivity.this, R.anim.button_up);
myButton.startAnimation(animation);
break;
}
return false;
}
});
这很麻烦,因为我必须为所有按钮重复此操作。
有没有办法自动为所有按钮设置它或者这样做的整洁的XML方式?
答案 0 :(得分:1)
您可以编写一个扩展Button
的自定义视图,并在xml中使用它。也许您可以将NickNameScreenActivity.this
替换为getContext()
。