@Override public boolean onOptionsItemSelected(MenuItem item) { boolean handled = false; Intent intent; switch (item.getItemId()) { case MENU_GRAPHTYPE: showDialog(DIALOG_GRAPHTYPE); handled = true; break; case MENU_TRACKLIST: intent = new Intent(this, TrackList.class); intent.putExtra(Tracks._ID, mTrackUri.getLastPathSegment()); startActivityForResult(intent, MENU_TRACKLIST); break; case MENU_SHARE: intent = new Intent(Intent.ACTION_RUN); intent.setDataAndType(mTrackUri, Tracks.CONTENT_ITEM_TYPE); intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); Bitmap bm = mViewFlipper.getDrawingCache(); Uri screenStreamUri = ShareTrack.storeScreenBitmap(bm); intent.putExtra(Intent.EXTRA_STREAM, screenStreamUri); startActivityForResult( Intent.createChooser(intent, getString(R.string.share_track)), MENU_SHARE); handled = true; break; default: handled = super.onOptionsItemSelected(item); } return handled; }