android imageview跟随手指上下移动沿上边沿上下摆动
时间: 2023-09-22 17:15:30 浏览: 150
实现android ImageView跟随手指上下移动沿上边沿上下摆动,可以通过在ImageView的onTouch事件中获取手指的移动距离,然后根据移动距离来移动ImageView的位置,并且根据移动距离的大小来改变ImageView的角度,从而实现上下摆动的效果。
具体实现步骤如下:
1.在ImageView的onTouch事件中获取手指的移动距离,代码如下:
```
float startY = 0;
float lastY = 0;
float moveY = 0;
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
startY = event.getRawY();
break;
case MotionEvent.ACTION_MOVE:
lastY = event.getRawY();
moveY = lastY - startY;
//根据移动距离来移动ImageView的位置
imageView.setY(imageView.getY() + moveY);
//根据移动距离的大小来改变ImageView的角度
imageView.setRotation(moveY / 10);
startY = lastY;
break;
case MotionEvent.ACTION_UP:
break;
}
return true;
}
```
2.在布局文件中设置ImageView的上边沿对齐父布局的上边沿,代码如下:
```
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:src="@drawable/image" />
```
这样就可以实现android ImageView跟随手指上下移动沿上边沿上下摆动的效果了。
阅读全文