@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.cancel: Intent cancelIntent = new Intent(getBaseContext(), MainActivity.class); switch (_navigationSource) { case AllContacts: cancelIntent = new Intent(getBaseContext(), MainActivity.class); cancelIntent.putExtra("selectedTab", MainActivity.TAB_CONTACTS); break; case GroupContacts: cancelIntent = new Intent(getBaseContext(), GroupActivity.class); cancelIntent.putExtra("groupId", _contact.getGroupId()); break; case ViewContact: cancelIntent = new Intent(getBaseContext(), ViewContactActivity.class); cancelIntent.putExtra("contactId", _contact.getId()); break; } cancelIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); getBaseContext().startActivity(cancelIntent); return true; case R.id.update: if (_name.getText().toString().length() > 0) { String meetupId = _contact.getMeetupId(); String name = _name.getText().toString(); String website = _website.getText().toString(); String contactPhotoThumbnailLocation = ""; String link = ""; String twitterId = ""; String linkedInId = ""; String facebookId = ""; String tumblrId = ""; String flickrId = ""; for (int i = 0; i < _contacts.size(); i++) { if ((_contacts.get(i).getName().trim().toLowerCase()) .equals(_name.getText().toString().trim().toLowerCase())) { meetupId = _contacts.get(i).getMeetupId(); name = _contacts.get(i).getName(); link = _contacts.get(i).getLink(); twitterId = _contacts.get(i).getTwitterId(); linkedInId = _contacts.get(i).getLinkedInId(); facebookId = _contacts.get(i).getFacebookId(); tumblrId = _contacts.get(i).getTumblrId(); flickrId = _contacts.get(i).getFlickrId(); contactPhotoThumbnailLocation = _contacts.get(i).getPhotoThumbnail(); break; } } ContactDataAccess contactDataAccess = new ContactDataAccess(this); contactDataAccess.updateContact( _contact.getId(), meetupId, new byte[0], name, website, _email.getText().toString(), _phone.getText().toString(), _notes.getText().toString(), link, twitterId, linkedInId, facebookId, tumblrId, flickrId); if (contactPhotoThumbnailLocation.trim().length() > 0) { DownloadImageTask downloadImageTask = new DownloadImageTask(this, meetupId, contactPhotoThumbnailLocation); downloadImageTask.execute(); } Intent returnIntent = new Intent(getBaseContext(), ViewContactActivity.class); returnIntent.putExtra("navigationSource", _navigationSource); returnIntent.putExtra("contactId", _contact.getId()); returnIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); getBaseContext().startActivity(returnIntent); return true; } else { Toast.makeText(this, R.string.you_need_to_provide_a_name, Toast.LENGTH_SHORT).show(); } } return false; }