基于Android实现随手指移动的ImageView
更新时间:2016年01月11日 10:56:02 作者:IAlexanderI
这篇文章主要介绍了基于Android实现随手指移动的ImageView的相关资料,需要的朋友可以参考下
ImageView用来显示任意图像图片,可以自己定义显示尺寸,显示颜色等等.
运行效果是这样的(文字说明):
首次进入程序,手指点击屏幕上的任意位置,图片会随之移动。
布局文件
<?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/FrameLayout01" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#f0f0f0" > <com.sgw.move.MoveImageView android:id="@+id/ImageView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/icon" > </com.sgw.move.MoveImageView> </FrameLayout>
实现代码
public class MoveImageView extends ImageView {
public MoveImageView(Context context) {
super(context);
}
public MoveImageView(Context context, AttributeSet attrs) {
super(context, attrs, 0);
}
public MoveImageView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
public void setLocation(int x, int y) {
this.setFrame(x, y - this.getHeight(), x + this.getWidth(), y);
}
// 移动
public boolean autoMouse(MotionEvent event) {
boolean rb = false;
switch (event.getAction()) {
case MotionEvent.ACTION_MOVE:
this.setLocation((int) event.getX(), (int) event.getY());
rb = true;
break;
}
return rb;
}
}
public class TestImageViewMove extends Activity {
private MoveImageView moveImageView;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
moveImageView = (MoveImageView) this.findViewById(R.id.ImageView01);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
moveImageView.autoMouse(event);
return false;
}
}
以上内容给大家介绍了基于Android实现随手指移动的ImageView的相关知识,希望本文分享对大家有所帮助。
相关文章
Android如何让APP无法在指定的系统版本上运行(实现方法)
这篇文章主要介绍了Android如何让APP无法在指定的系统版本上运行(实现方法),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2021-02-02
Android使用NestedScrollView 内嵌RecycleView滑动冲突问题解决
这篇文章主要介绍了Android使用NestedScrollView 内嵌RecycleView滑动冲突问题解决,文章围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下2022-06-06


最新评论