Я написал некоторый код для перемещения растрового изображения в сенсорном событии.К сожалению, код вызывает сбой при вызове createBitmap, и xval или yval - это что-то отличное от 0. Вот код, связанный с этой проблемой.Любая помощь будет оценена:
public class AndroidBitmap extends Activity {
private int yval=0;
private int xval=0;
Bitmap bitmapOrg;
private int bmpWidth;
private int bmpHeight;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.image_main);
myImageView = (ImageView)findViewById(R.id.imageview);
bitmapOrg = BitmapFactory.decodeResource(getResources(), R.drawable.android);
bmpWidth = bitmapOrg.getWidth();
bmpHeight = bitmapOrg.getHeight();
drawMatrix();
}
public boolean onTouchEvent(MotionEvent event) {
int eventaction = event.getAction();
switch (eventaction) {
case MotionEvent.ACTION_DOWN:
// finger touches the screen
break;
case MotionEvent.ACTION_MOVE:
// finger moves on the screen
break;
case MotionEvent.ACTION_UP:
// finger leaves the screen
xval = (int) event.getX();
yval = (int) event.getY();
drawMatrix();
break;
}
// tell the system that we handled the event and no further processing is required
return true;
}
private void drawMatrix(){
Matrix matrix = new Matrix();
Bitmap resizedBitmap = Bitmap.createBitmap(bitmapOrg, xval, yval,
bmpWidth, bmpHeight, matrix, true);
BitmapDrawable bmd = new BitmapDrawable(resizedBitmap);
myImageView.setImageDrawable(bmd);
}
}