/**
* activity基类
* @author
*
*/
public abstract class BaseActivity extends FragmentActivity {
private boolean isFinished;
private boolean isRunInBackground;
public Context context;
public boolean isResumed;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
context = this;
isFinished = false;
isRunInBackground = false;
CommonApp.getInstance().addActivity(this);
}
@Override
protected void onStart() {
super.onStart();
}
@Override
protected void onPause() {
super.onPause();
isResumed = false;
}
@Override
protected void onResume() {
super.onResume();
isResumed = true;
}
@Override
protected void onStop() {
super.onStop();
if(isFinished == false){
isRunInBackground = true ;
}
}
@Override
public void finish()
{
super.finish();
isFinished = true;
}
@Override
protected void onDestroy() {
super.onDestroy();
}
@Override
protected void onRestart() {
super.onRestart();
isRunInBackground = false;
}
/**
* 显示toast
* @param text
*/
public void toast(String text){
Toast.makeText(this, text, Toast.LENGTH_LONG).show();
}
/**
* 显示toast
* @param resId
*/
public void toast(int resId){
Toast.makeText(this, getString(resId), Toast.LENGTH_LONG).show();
}
/**
* 显示Fragment
*
* @param container
* @param target
*/
public void replaceFragment(int container, Fragment target) {
FragmentManager fm = getSupportFragmentManager();
fm.beginTransaction().replace(container, target).addToBackStack(null).commitAllowingStateLoss();
}
}
/**
* Fragment基类
* @author
*
*/
public class BaseFragment extends Fragment implements OnTouchListener{
/**
* 上下文
*/
public Context context;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
context = getActivity();
}
/**
* 显示toast
* @param text
*/
public void toast(String text){
if(isAdded()){
Toast.makeText(context, text, Toast.LENGTH_LONG).show();
}
}
/**
* 显示toast
* @param resId
*/
public void toast(int resId){
if(isAdded()){
Toast.makeText(context, context.getString(resId), Toast.LENGTH_LONG).show();
}
}
/**
* 屏蔽触摸事件穿透
* 子类使用 view.setOnTouchListener(this)
*/
@Override
public boolean onTouch(View v, MotionEvent event) {
return true;
}
/**
* 处理回退事件
*/
public void onBackPressed(){
getActivity().getSupportFragmentManager().popBackStack();
}
/**
* 切换Fragment
* @param container
* @param target
*/
public void replace(int container, Fragment target){
FragmentManager fm = getActivity().getSupportFragmentManager();
fm.beginTransaction().replace(container, target).addToBackStack(null).commitNowAllowingStateLoss();
}
/**
*
* @param container
* @param target
*/
public void add(int container, Fragment target){
FragmentManager fm = getActivity().getSupportFragmentManager();
fm.beginTransaction().add(container, target).addToBackStack(null).commitNowAllowingStateLoss();
}
}