Using original source from 
http://developer.android.com/resources/tutorials/views/hello-mapview.html
Part 1 works AOK. Part 2: Adding Overlay Items, Adds the following:

public class HelloItemizedOverlay extends ItemizedOverlay<OverlayItem>
{

        private ArrayList<OverlayItem> mOverlays = new
ArrayList<OverlayItem>();
        Context mContext;

        public HelloItemizedOverlay(Drawable defaultMarker) {
                super(boundCenterBottom(defaultMarker));
                // TODO Auto-generated constructor stub
        }
NOTE:  Polymorphed Method here!
        public HelloItemizedOverlay(Drawable defaultMarker, Context context)
{
                  super(defaultMarker);
                  mContext = context;
        }

        public void addOverlay(OverlayItem overlay) { ...CODE Removed for
Brevity!

        @Override
        protected OverlayItem createItem(int ith) { ...

        @Override
        public int size() { ...


        @Override
        protected boolean onTap(int index) {
          OverlayItem item = mOverlays.get(index);
          // The following line crashes because mContext is still NULL here!!
          AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
          dialog.setTitle(item.getTitle());
          dialog.setMessage(item.getSnippet());
          dialog.show();
          return true;
        }
}

But in HelloGoogleMaps the HelloItemizedOverlay object is created
using the basic constructor as follows:

HelloItemizedOverlay itemizedoverlay = new
HelloItemizedOverlay(drawable);

So the AlertDialog.Builder() is initialised by mContext = NULL;

I tried to use the following line to correct the situation but this
only delay crash until the dialog.show() at the end of onTap()

HelloItemizedOverlay itemizedoverlay = new
HelloItemizedOverlay(drawable, getApplicationContext());

Can someone please advise a valid solution and correct the
HelloGoogleMaps tutorial :o)

Thanks

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to