package com.mcxiaoke.next.app; import android.annotation.TargetApi; import android.app.Activity; import android.os.Build.VERSION_CODES; import android.os.Bundle; import android.view.MenuItem; import com.mcxiaoke.next.utils.LogUtils; /** * User: mcxiaoke * Date: 14-3-5 * Time: 11:49 */ @TargetApi(VERSION_CODES.HONEYCOMB) public abstract class NextBaseActivity extends Activity { public static final boolean DEBUG = false; private static final String BASE_TAG = NextBaseActivity.class.getSimpleName(); private boolean mPaused; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (DEBUG) { LogUtils.d(BASE_TAG, "onCreate() activity=" + getActivity()); } } @Override protected void onResume() { super.onResume(); mPaused = false; } @Override protected void onPostResume() { super.onPostResume(); } @Override protected void onPause() { super.onPause(); mPaused = true; } @Override protected void onDestroy() { super.onDestroy(); if (DEBUG) { LogUtils.d(BASE_TAG, "onDestroy() activity=" + getActivity()); } } @Override public void onBackPressed() { super.onBackPressed(); LogUtils.v(BASE_TAG, "onBackPressed() activity=" + getActivity()); } @Override public boolean onOptionsItemSelected(MenuItem item) { if (android.R.id.home == item.getItemId()) { onHomeClick(); return true; } return super.onOptionsItemSelected(item); } protected boolean isPaused() { return mPaused; } protected void onHomeClick() { if (isFinishing()) { return; } LogUtils.v(BASE_TAG, "onHomeClick() activity=" + getActivity()); onBackPressed(); } protected NextBaseActivity getActivity() { return this; } public void showProgressIndicator() { setProgressBarIndeterminateVisibility(true); } public void hideProgressIndicator() { setProgressBarIndeterminateVisibility(false); } public void setActionBarTitle(CharSequence text) { getActionBar().setTitle(text); } public void setActionBarTitle(int resId) { getActionBar().setTitle(resId); } public void setActionBarSubtitle(CharSequence text) { getActionBar().setSubtitle(text); } public void setActionBarSubtitle(int resId) { getActionBar().setSubtitle(resId); } }