package net.simonvt.menudrawer.samples; import net.simonvt.menudrawer.MenuDrawer; import net.simonvt.menudrawer.Position; import android.os.Build; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.widget.TextView; import com.example.androidmenusample.R; public class RightDrawerSample extends BaseListSample { private static final String STATE_CONTENT_TEXT = "net.simonvt.menudrawer.samples.RightDrawerSample.contentText"; private static final int MENU_OVERFLOW = 1; private String mContentText; private TextView mContentTextView; @Override protected void onCreate(Bundle inState) { super.onCreate(inState); if (inState != null) { mContentText = inState.getString(STATE_CONTENT_TEXT); } mMenuDrawer.setContentView(R.layout.activity_contentsample); mContentTextView = (TextView) findViewById(R.id.contentText); mContentTextView.setText(mContentText); } @Override protected void onMenuItemClicked(int position, Item item) { mContentTextView.setText(item.mTitle); mMenuDrawer.closeMenu(); } @Override protected int getDragMode() { return MenuDrawer.MENU_DRAG_CONTENT; } @Override protected Position getDrawerPosition() { return Position.END; } @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); outState.putString(STATE_CONTENT_TEXT, mContentText); } @Override public boolean onCreateOptionsMenu(Menu menu) { MenuItem overflowItem = menu.add(0, MENU_OVERFLOW, 0, null); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) { overflowItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS); } overflowItem.setIcon(R.drawable.ic_menu_moreoverflow_normal_holo_light); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case MENU_OVERFLOW: mMenuDrawer.toggleMenu(); return true; } return super.onOptionsItemSelected(item); } @Override public void onBackPressed() { final int drawerState = mMenuDrawer.getDrawerState(); if (drawerState == MenuDrawer.STATE_OPEN || drawerState == MenuDrawer.STATE_OPENING) { mMenuDrawer.closeMenu(); return; } super.onBackPressed(); } }