package com.hdl.photovoltaic.base;
|
|
import android.app.Activity;
|
import android.content.Intent;
|
import android.os.Bundle;
|
import android.view.View;
|
|
import androidx.annotation.Nullable;
|
import androidx.appcompat.app.AppCompatActivity;
|
|
import com.hdl.photovoltaic.listener.BaseView;
|
import com.hdl.photovoltaic.utils.AppManagerUtils;
|
|
|
public abstract class BaseActivity extends AppCompatActivity implements BaseView {
|
|
protected Activity _mActivity;
|
|
@Override
|
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
super.onCreate(savedInstanceState);
|
|
_mActivity = this;
|
Object content = getContentView();
|
//添加Activity到堆栈
|
AppManagerUtils.getAppManager().addActivity(this);
|
if (content instanceof Integer) {
|
setContentView((int) content);
|
} else if (content instanceof View) {
|
setContentView((View) content);
|
} else {
|
throw new RuntimeException("getContentView() should be a @LayoutRes or a View");
|
}
|
onBindView(savedInstanceState);
|
|
}
|
|
|
@Override
|
protected void onDestroy() {
|
super.onDestroy();
|
|
}
|
|
/**
|
* 显示View
|
*
|
* @param view
|
*/
|
public void setViewVisible(View view) {
|
if (view.getVisibility() != View.VISIBLE) {
|
view.setVisibility(View.VISIBLE);
|
}
|
}
|
|
/**
|
* 隐藏View
|
*
|
* @param view
|
*/
|
protected void setViewGone(View view) {
|
if (view.getVisibility() != View.GONE) {
|
view.setVisibility(View.GONE);
|
}
|
}
|
|
/**
|
* 简单的跳转Activity
|
*
|
* @param clazz
|
*/
|
protected void startActivity(Class<?> clazz) {
|
Intent intent = new Intent(this, clazz);
|
startActivity(intent);
|
|
}
|
|
/**
|
* 根据手机的分辨率从 dp 的单位 转成为 px(像素)
|
*/
|
public int dip2px(float dpValue) {
|
final float scale = getResources().getDisplayMetrics().density;
|
return (int) (dpValue * scale + 0.5f);
|
}
|
|
/**
|
* 根据手机的分辨率从 px(像素) 的单位 转成为 dp
|
*/
|
public int px2dip(float pxValue) {
|
final float scale = getResources().getDisplayMetrics().density;
|
return (int) (pxValue / scale + 0.5f);
|
}
|
|
|
}
|