Tuesday, May 8, 2012

ImageView doesn't dispatch TouchEvent

I want to change the image (that I get from a web url) in my ImageView when I touch the left or right of the screen. I tried using a TouchListener but I get an error about dispatchTouchEvent.



Using a gallery view is not the solution because I want the images displayed in full screen.



This is the code I use.



 public class Prova4Activity extends Activity implements OnTouchListener {
/** Called when the activity is first created. */
ImageView image;
Bitmap trash = loadImageFromUrl("http://www.televideo.rai.it/televideo/pub/tt4web/Nazionale/16_9_page-100.6.png");
ImageView imgpag;
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.EDGE_RIGHT){
trash.recycle();
trash = null;
trash = loadImageFromUrl("http://www.televideo.rai.it/televideo/pub/tt4web/Nazionale/16_9_page-100.6.png");
image.setImageBitmap(trash);

}else if(event.getAction() == MotionEvent.EDGE_LEFT){
trash.recycle();
trash = null;
trash = loadImageFromUrl("http://www.televideo.rai.it/televideo/pub/tt4web/Nazionale/16_9_page-100.5.png");
imgpag.setImageBitmap(trash);

}
imgpag.setScaleType(ScaleType.FIT_XY);

return false;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

imgpag = (ImageView)findViewById (R.id.imgpag);
imgpag.setImageBitmap(trash);
imgpag.setOnTouchListener(this);

}
}


In logcat I see the following message many times:



Key dispatching timed out sending to com.namemyapp Current state {{null Window{439f0e10 com.namemyapp Continuing to wait for key to be dispatched




No comments:

Post a Comment