// RestaurantLocator Example // Source code file: MyView.java package it372.restaurantlocator; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.support.v4.content.ContextCompat; import android.view.MotionEvent; import android.view.View; import android.widget.Toast; import java.util.ArrayList; import java.util.Locale; public class MyView extends View { private ArrayList col; final private Context savedContext; public MyView(Context c, ArrayList rest) { super(c); savedContext = c; col = rest; this.setOnTouchListener(new View.OnTouchListener( ) { @Override public boolean onTouch(View v, MotionEvent e) { String foundName = ""; System.out.println(e.getAction( )); if (e.getAction() == MotionEvent.ACTION_UP) { System.out.println(col.size( )); for (Restaurant r : col) { if (Math.abs(e.getX() - 20.0f * r.x) < 20.0f && Math.abs(e.getY() - 20.0f * r.y) < 20.0f) { foundName = r.name; } } } Toast t = Toast.makeText(savedContext.getApplicationContext(), foundName, Toast.LENGTH_LONG); t.show(); return true; } }); } public boolean performClick( ) { return true; } @Override public void onDraw(Canvas canvas) { Paint paint = new Paint(); paint.setColor(Color.BLUE); for (Restaurant r : col) { canvas.drawCircle(20.0f * r.x, 20.0f * r.y, 10.0f, paint); } } }