package ren.solid.library.activity.base;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.view.View;
import com.trello.rxlifecycle2.components.support.RxAppCompatActivity;
import com.umeng.analytics.MobclickAgent;
/**
* Created by _SOLID
* Date:2016/3/30
* Time:9:40
*/
public abstract class BaseActivity extends RxAppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
init(savedInstanceState);
setContentView(setLayoutResourceID());
setUpView();
setUpData();
}
protected void setUpData() {
}
/***
* 用于在初始化View之前做一些事
*/
protected void init(Bundle savedInstanceState) {
}
protected abstract int setLayoutResourceID();
protected abstract void setUpView();
protected <T extends View> T $(int id) {
return (T) super.findViewById(id);
}
protected void startActivityWithoutExtras(Class<?> clazz) {
Intent intent = new Intent(this, clazz);
startActivity(intent);
}
protected void startActivityWithExtras(Class<?> clazz, Bundle extras) {
Intent intent = new Intent(this, clazz);
intent.putExtras(extras);
startActivity(intent);
}
@Override
protected void onDestroy() {
super.onDestroy();
}
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
switch (requestCode) {
case 1:
break;
}
}
@Override
protected void onResume() {
super.onResume();
MobclickAgent.onResume(this);
}
@Override
protected void onPause() {
super.onPause();
MobclickAgent.onPause(this);
}
}