您的位置:首页 > 移动开发 > Android开发

Android代码规范化:抽取Activity基类

2017-05-14 23:07 411 查看
今天是个特殊的日子,首先呢,今天是5月的第二个周日,母亲节。在这里先祝天下的母亲们身体健康。其次,今天是秦皇岛国际马拉松。又一个体育盛事。再然后,不得不说的一点是,今天天气特别好,同学还拍到了一朵心形的云朵。也许表达的就是对母亲的祝福吧!

嘿嘿。今天就说下Android代码规范化的内容,抽取Activity基类。好处呢?第一,可以规范代码,增强代码的可读性。第二就是减少代码量,让逻辑更清楚,第三,定义共性的方法和变量,避免代码重复。

import android.app.Activity;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.FragmentActivity;
import android.util.Log;
import android.view.View;
import android.widget.Toast;

import com.weichao.mobileplayer.R;

/**
* @ 创建时间: 2017/5/14 on 10:44.
* @ 描述: Activity基类
* @ 作者: 郑卫超 QQ: 2318723605
*/

public abstract class BaseActivity extends FragmentActivity implements View.OnClickListener {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//得到布局文件
setContentView(getLayoutId());

initView();
initData();
initLlistenr();
registComBtn();
}

/**
* 注册共性的控件
*/
private void registComBtn() {
View back = findViewById(R.id.back);
if (back!=null){
back.setOnClickListener(this);
}
}

/**
* 对统一的按钮进行统一处理
* @param v 点击的View
*/
@Override
public void onClick(View v) {
switch (v.getId()) {
//大部分都有的控件的点击事件,在基类里处理
case R.id.back://(返回键为例) 生成ids.xml文件
this.onBackPressed();
break;

default:
processClick(v);
break;
}
}

protected abstract int getLayoutId();

/**
* 初始化View
*/
public abstract void initView() ;

/**
* 初始化数据
*/
protected abstract void initData();

/**
* 初始化监听器
*/
protected abstract void initLlistenr();

protected abstract void processClick(View v);

/**
* 吐司
*/
public void showToast(String msg){
Toast.makeText(this, msg, Toast.LENGTH_SHORT).show();
}

/**
* log
*/
public void LogE(String msg){
Log.e("zwc", "LogE: "+msg);;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android