I have a customized OnTouch Method where i check if the touch coordinates contains a rectangle.After checking the condition i want to start a new Activity.But unfortuanlely its not workin.Can someone help me out?
public class custom extends SurfaceView implements SurfaceHolder.Callback{
public boolean onTouchEvent(MotionEvent event) {
int touchX = (int) event.getX();
int touchY = (int) event.getY();
switch(event.getAction()){
case MotionEvent.ACTION_DOWN:
System.out.println("Touching down!");
for(int i =0; i< rectangles.size();i++){
if(rectangles.get(i).contains(touchX,touchY)){
System.out.println("Touched Rectangle, start activity.");
rectangles.get(i).describeContents ();
Selected_rect = String.valueOf(rectangles.get(i));
}
Intent intent=new Intent(getContext(), DetectBlock.class);
startActivity(intent); //ERROR >> Start activity undefined
}
break;
case MotionEvent.ACTION_UP:
System.out.println("Touching up!");
break;
case MotionEvent.ACTION_MOVE:
System.out.println("Sliding your finger around on the screen.");
break;
}
return true;
}
}
Fist of all, when you log, you don't use
System.out.println(");
. For logging in Android one uses theLog
class, so you can simply log like this:Log.d("className", "This is a test");
This might resolve your problem The method startActivity(Intent) is undefined for the type?
I hope this helps.
I found the answer :)