我有一个按钮,并在其上实现了滑动手势
btn.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
myGestDetector.onTouchEvent(event);
Toast.LENGTH_SHORT).show();
return true;
}
});
myGestDetector = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener()
{ boolean swipePerformed = true;
@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY)
{
//Log.d(TAG, "onScroll: " + e1.toString()+" "+e2.toString());
if (e2.getX()- e1.getX()>900) {
btn1.setText("Order has been placed!");
Drawable img = Buttons.this.getResources().getDrawable(R.drawable.heart_empty);
textView.setCompoundDrawablesWithIntrinsicBounds(img, null, null, null);
}});
使用e1.getX我可以跟踪滚动开始和结束的x位置。现在,当滚动发生时,我想改变按钮的颜色并跟踪滚动位置。想象一下白色进度条,蓝色代表进度。我想要一种跟随用户动作的颜色。截至目前,滑动完成后,按钮上的图片会发生变化。