使用BaseActivity可以封装一些重复代码例如设置标题栏颜色,封装一些工具类...
主要功能:
- 封装Toast
新建一个BaseActivity继承自Activity
package com.onepilltest;
import android.app.Activity;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Toast;
import com.onepilltest.util.StatusBarUtil;
/**
* 封装Activity用于管理所有Activity
*/
public abstract class BaseActivity extends Activity {
/***是否显示标题栏*/
private boolean isshowtitle = true;
/***是否显示标题栏*/
private boolean isshowstate = true;
/***封装toast对象**/
private static Toast toast;
/***获取TAG的activity名称**/
protected final String TAG = this.getClass().getSimpleName();
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(intiLayout());
//初始化状态栏
{
//当FitsSystemWindows设置 true 时,会在屏幕最上方预留出状态栏高度的 padding
StatusBarUtil.setRootViewFitsSystemWindows(this,true);
//设置状态栏透明
StatusBarUtil.setTranslucentStatus(this);
//一般的手机的状态栏文字和图标都是白色的, 可如果你的应用也是纯白色的, 或导致状态栏文字看不清
//所以如果你是这种情况,请使用以下代码, 设置状态使用深色文字图标风格, 否则你可以选择性注释掉这个if内容
if (!StatusBarUtil.setStatusBarDarkTheme(this, true)) {
//如果不支持设置深色风格 为了兼容总不能让状态栏白白的看不清, 于是设置一个状态栏颜色为半透明,
//这样半透明+白=灰, 状态栏的文字能看得清
StatusBarUtil.setStatusBarColor(this,0x55000000);
}
}
//初始化控件
initView();
//设置数据
initData();
}
/**
* 设置布局
*
* @return
*/
public abstract int intiLayout();
/**
* 初始化布局
*/
public abstract void initView();
/**
* 设置数据
*/
public abstract void initData();
/**
* 显示长toast
* @param msg
*/
public void toastLong(String msg){
if (null == toast) {
toast = new Toast(this);
toast.setDuration(Toast.LENGTH_LONG);
toast.setText(msg);
toast.show();
} else {
toast.setText(msg);
toast.show();
}
}
/**
* 显示短toast
* @param msg
*/
public void toastShort(String msg){
if (null == toast) {
toast = new Toast(this);
toast.setDuration(Toast.LENGTH_SHORT);
toast.setText(msg);
toast.show();
} else {
toast.setText(msg);
toast.show();
}
}
}
将自己的Activity继承BaseActivity
public class SettingActivity extends BaseActivity {