Alert Dialog on MapActivity doesn't appear and I tried on any ways, What should I do?
===

This is in my MapActivity and it won't show Alert Dialog on emulator and I don't know where is the problem. If someone knows, I'll be very thankful. It should appear after 1.5 sec holdind on touch in the screen and have three buttons as options, and there's no Alert dialog when I run app and hold it on the screen... Here is the code:

        class Touchy extends Overlay{           //on touch
    	  public boolean OnTouchEvent(MotionEvent e, MapView m){
    		  if(e.getAction()== MotionEvent.ACTION_DOWN){
    			  start=e.getEventTime();
    			  x= (int) e.getX();
    			  y= (int) e.getY();
    			   touchedpoint= map.getProjection().fromPixels(x, y);
    		  }
    		  if(e.getAction()== MotionEvent.ACTION_UP){
    			  stop=e.getEventTime();
    		  }
    		  if(stop - start>1500){
    			  //perform action                  //alert dialog
    			  AlertDialog.Builder alert = new AlertDialog.Builder(Main.this);
    
    			  alert.setTitle("pick an option");
    			  alert.setMessage("You must pick an option");
    			  alert.setPositiveButton("option 1", new DialogInterface.OnClickListener() {
    		            
    				
    				public void onClick(DialogInterface dialog, int id) {
    					// TODO Auto-generated method stub
    					
    				}
    			});
    			  
    			  alert.setNeutralButton("pick address", new DialogInterface.OnClickListener() {
    					
    					public void onClick(DialogInterface dialog, int id) {
    						// TODO Auto-generated method stub
    						Geocoder geocoder= new Geocoder(getBaseContext(), Locale.getDefault());    
    						try{
    							List<Address>address= geocoder.getFromLocation(touchedpoint.getLatitudeE6()/1E6, touchedpoint.getLongitudeE6()/1E6, 1);
    							if(address.size() > 0){
    								String display="";
    								for(int i=0; i<address.get(0).getMaxAddressLineIndex(); i++){
    									
    									display+=address.get(0).getAddressLine(i) + "\n";
    								}
    								Toast t= Toast.makeText(getBaseContext(), display, Toast.LENGTH_LONG);
    								t.show();
    							}
    							
    						} catch (IOException e) {
    							// TODO Auto-generated catch block
    							e.printStackTrace();
    						}finally{
    							
    						}
    					}
    				});
    			  
    			  alert.setNegativeButton("option 3", new DialogInterface.OnClickListener() {
    					
    					public void onClick(DialogInterface dialog, int id) {
    						// TODO Auto-generated method stub
    						
    					}
    				});
    			  
    			  alert.create();
    			  alert.show();
    			  return true;
    		  }
    		return false;
    		  
    	  }
      }
    
        
    }






