package net.basilwang; import android.graphics.drawable.Drawable; import android.os.Bundle; import android.support.v4.app.FragmentTransaction; import android.support.v4.app.ListFragment; import com.actionbarsherlock.view.MenuItem; import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu; import com.jeremyfeinstein.slidingmenu.lib.app.SlidingFragmentActivity; public class BaseActivity extends SlidingFragmentActivity { private int mTitleRes; protected ListFragment mFrag; public BaseActivity(int titleRes) { mTitleRes = titleRes; } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setTitle(mTitleRes); getSupportActionBar().setIcon(R.drawable.menu_slide); // Drawable dr = // getResources().getDrawable(R.drawable.actionbar_bg_shape); Drawable dr = getResources().getDrawable(R.drawable.actionbar_bgc); getSupportActionBar().setBackgroundDrawable(dr); // set the Behind View setBehindContentView(R.layout.menu_frame); if (savedInstanceState == null) { FragmentTransaction t = this.getSupportFragmentManager() .beginTransaction(); mFrag = new ListFragment(); t.replace(R.id.menu_frame, mFrag); t.commit(); } else { mFrag = (ListFragment) this.getSupportFragmentManager() .findFragmentById(R.id.menu_frame); } // customize the SlidingMenu SlidingMenu sm = getSlidingMenu(); sm.setShadowWidthRes(R.dimen.shadow_width); sm.setShadowDrawable(R.drawable.shadow); sm.setBehindOffsetRes(R.dimen.slidingmenu_offset); sm.setFadeDegree(0.35f); sm.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN); getSupportActionBar().setDisplayHomeAsUpEnabled(true); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: if (getSupportFragmentManager().getBackStackEntryCount() < 1) toggle(); else getSupportFragmentManager().popBackStack(); return true; // case R.id.github: // Util.goToGitHub(this); // return true; } return super.onOptionsItemSelected(item); } }