rabbit.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View view, MotionEvent motionEvent) {
switch (motionEvent.getAction()){ case MotionEvent.ACTION_DOWN: Log.i("yyy","按下了"); break; case MotionEvent.ACTION_MOVE: Log.i("yyy","移动了"); break; case MotionEvent.ACTION_UP: Log.i("yyy","抬起了"); break; }
还可以在onTouch里直接添加各种触发事件。
rabbit.bitmapX = motionEvent.getX(); rabbit.bitmapY = motionEvent.getY(); rabbit.invalidate();
public float bitmapX; public float bitmapY;
bitmapX = 290; bitmapY = 0;
@Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); Paint paint = new Paint(); Bitmap bitmap = BitmapFactory.decodeResource(this.getResources(), R.mipmap.icon_user); canvas.drawBitmap(bitmap, bitmapX, bitmapY, paint); if (bitmap.isRecycled()){ bitmap.recycle(); } }
final FrameLayout frameLayout = findViewById(R.id.mylayout); final RabbitView rabbit = new RabbitView(this); frameLayout.addView(rabbit);
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate
android:duration="1000" android:fromYDelta="300" android:toYDelta="0" android:fromXDelta="300" android:toXDelta="300"/> </set>
Animation anim = AnimationUtils.loadAnimation(MainActivity.this, R.anim.translate); rabbit.startAnimation(anim);
本文地址:https://blog.csdn.net/qq_43556200/article/details/107902872
如对本文有疑问, 点击进行留言回复!!
android的编辑框(EditText)的实际案例代码分享
Android开发触摸touch事件(补间动画和自定义view使用方法)
2020百度Android岗面试真题全收录+解析,备战金九银十
Android NFC 写入包名,NDEF数据,唤醒 指定 APP 跳转 指定 页面Activity,读取数据处理
网友评论