package com.insthub.O2OMobile.Activity;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentTransaction;
import android.view.Gravity;
import android.view.KeyEvent;
import com.BeeFramework.view.ToastView;
import com.external.eventbus.EventBus;
import com.insthub.O2OMobile.Fragment.A0_HomeFragment;
import com.insthub.O2OMobile.Fragment.A2_MenuFragment;
import com.insthub.O2OMobile.O2OMobileAppConst;
import com.insthub.O2OMobile.Fragment.RightFragment;
import com.insthub.O2OMobile.Fragment.SlidingMenu;
import com.insthub.O2OMobile.MessageConstant;
import com.insthub.O2OMobile.R;
public class SlidingActivity extends FragmentActivity {
public static final String RESPONSE_METHOD = "method";
public static final String RESPONSE_CONTENT = "content";
public static final String RESPONSE_ERRCODE = "errcode";
protected static final String ACTION_LOGIN = "com.baidu.pushdemo.action.LOGIN";
public static final String ACTION_MESSAGE = "com.baiud.pushdemo.action.MESSAGE";
public static final String ACTION_RESPONSE = "bccsclient.action.RESPONSE";
public static final String ACTION_PUSHCLICK = "bccsclient.action.PUSHCLICK";
public static final String ACTION_SHOW_MESSAGE = "bccsclient.action.SHOW_MESSAGE";
protected static final String EXTRA_ACCESS_TOKEN = "access_token";
public static final String EXTRA_MESSAGE = "message";
public static final String CUSTOM_CONTENT ="CustomContent";
public static final String ACTION_SHOW_MESSAGE_LIST = "ACTION_SHOW_MESSAGE_LIST";
private SlidingMenu mSlidingMenu;
private A2_MenuFragment mA2MenuFragment;
private RightFragment mRightFragment;
private A0_HomeFragment mA0HomeFragment;
private Fragment mFragment;
private SharedPreferences mShared;
private SharedPreferences.Editor mEditor;
@Override
protected void onCreate(Bundle arg0) {
super.onCreate(arg0);
setContentView(R.layout.main);
handleIntent(getIntent());
init();
mShared = this.getSharedPreferences(O2OMobileAppConst.USERINFO, 0);
mEditor = mShared.edit();
EventBus.getDefault().register(this);
}
private void init() {
mSlidingMenu = (SlidingMenu) findViewById(R.id.slidingMenu);
mSlidingMenu.setLeftView(getLayoutInflater().inflate(R.layout.left_frame, null));
mSlidingMenu.setRightView(getLayoutInflater().inflate(R.layout.right_frame, null));
mSlidingMenu.setCenterView(getLayoutInflater().inflate(R.layout.center_frame, null));
FragmentTransaction t = this.getSupportFragmentManager().beginTransaction();
mA2MenuFragment = new A2_MenuFragment();
t.replace(R.id.left_frame, mA2MenuFragment);
mRightFragment = new RightFragment();
t.replace(R.id.right_frame, mRightFragment);
mA0HomeFragment = new A0_HomeFragment();
t.replace(R.id.center_frame, mA0HomeFragment);
t.commit();
}
public void showLeft() {
mSlidingMenu.showLeftView();
}
public void showRight() {
mSlidingMenu.showRightView();
}
public void switchContent(Fragment fragment) {
this.mFragment = fragment;
FragmentTransaction t = this.getSupportFragmentManager().beginTransaction();
t.replace(R.id.center_frame, this.mFragment);
t.commit();
showLeft();
}
public void isShowLeft(boolean Left) {
mSlidingMenu.setCanSliding(Left, false);
}
// 退出操作
private boolean isExit = false;
@SuppressLint("NewApi")
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (keyCode == KeyEvent.KEYCODE_BACK) {
if (mSlidingMenu.mScroller.getCurrX() != 0) {
showLeft();
return true;
} else {
if (isExit == false) {
isExit = true;
//Toast.makeText(getApplicationContext(), "再按一次退出娜娜日记",Toast.LENGTH_SHORT).show();
ToastView toast = new ToastView(getApplicationContext(), getString(R.string.exit_again));
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
handler.sendEmptyMessageDelayed(0, 3000);
return true;
} else {
finish();
return false;
}
}
}
return true;
}
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
isExit = false;
}
};
@Override
protected void onStart() {
super.onStart();
//Todo
}
@Override
protected void onNewIntent(Intent intent) {
// 如果要统计Push引起的用户使用应用情况,请实现本方法,且加上这一个语句
//Todo
}
private void handleIntent(Intent intent) {
//Todo
}
@Override
protected void onDestroy() {
EventBus.getDefault().unregister(this);
super.onDestroy();
}
public void onEvent(Object event)
{
Message message = (Message)event;
if(message.what == MessageConstant.LOGINOUT)
{
finish();
}
}
}