@Override
  public boolean onOptionsItemSelected(MenuItem menuItem) {

    switch (menuItem.getItemId()) {
      case R.id.menu_item_new_memory:
        Memory memory = new Memory();
        try {
          MemoryList.get(getActivity()).addMemory(memory);
        } catch (IOException e) {
          e.printStackTrace();
        } catch (JSONException e) {
          e.printStackTrace();
        }
        Intent i = new Intent(getActivity(), MemoryPagerActivity.class);
        i.putExtra(MemoryFragment.EXTRA_MEMORY_ID, memory.getMemoryId());
        startActivityForResult(i, MEMORY_RETURN);
        Toast.makeText(getActivity(), "New Memory is created", Toast.LENGTH_LONG).show();
        return true;

      case R.id.menu_item_show_subtitle:
        if (getActivity().getActionBar().getSubtitle() == null) {
          getActivity().getActionBar().setSubtitle(R.string.Subtitle);
          menuItem.setTitle(R.string.hide_subtitle);
          subtitleVisability = true;
        } else {
          getActivity().getActionBar().setSubtitle(null);
          menuItem.setTitle(R.string.show_subtitle);
          subtitleVisability = false;
        }
        return true;
      default:
        return super.onOptionsItemSelected(menuItem);
    }
  }
  @Override
  public void onListItemClick(ListView l, View v, int position, long id) {

    // Memory m = (Memory) (getListAdapter()).getItem(position);
    Memory m = ((MemoryAdapter) getListAdapter()).getItem(position);
    // Log.d(TAG, m.getMemoryTitle() + " is selected ");

    // Intent i = new Intent(getActivity(),MemoryActivity.class);

    Intent i = new Intent(getActivity(), MemoryPagerActivity.class);
    i.putExtra(MemoryFragment.EXTRA_MEMORY_ID, m.getMemoryId());
    startActivityForResult(i, MEMORY_RETURN);
    Toast.makeText(getActivity(), m.getMemoryTitle() + " is selected ", Toast.LENGTH_LONG).show();
  }