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.MoveImageViewandroid: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);}@Overridepublic boolean onTouchEvent(MotionEvent event) {moveImageView.autoMouse(event);return false;}}
以上内容给大家介绍了基于Android实现随手指移动的ImageView的相关知识,希望本文分享对大家有所帮助。
新闻热点
疑难解答
图片精选