1 背景:想使用ImageView+Matrix来实现图片的移动。
2 结果:1) 移动多次,每次都是从原来的位置进行移动,2) 移动之前ImageView的控件的位置并没有改变,图片在ImageView控件里面位置发生了变化
实现代码:
topim=(ImageView)findViewById(R.id.top_im);
detector=new GestureDetector(this, this);
topim.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.i(TAG, "onClick");
// 不能
Matrix matrix = new Matrix();
matrix.postTranslate(100, 100);
x+=100;
y+=100;
topim.setImageMatrix(matrix);
}
参加如下代码:
3 移动的只是ImageView里面的内容,ImageView本身没有变。
开始的位置:
移动后的位置:
注:在布局文件中需要将:ImageView 的属性设置为android:scaleType="matrix"。