BaseActivity封装

来源:互联网 发布:unity3d animation 编辑:程序博客网 时间:2024/05/14 15:25
//进行封装
public abstract class BaseActivity extends AppCompatActivity implements View.OnClickListener,ViewPager.OnPageChangeListener,RadioGroup.OnCheckedChangeListener{
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(getLayoutId());

        findId();

        initData();

    }


    /**
     * 获取布局的id
     * @return
     */
    protected abstract int getLayoutId();

    /**
     * 找到控件的id
     */
    protected abstract void findId();

    /**
     * 初始化数据的操作
     */
    protected abstract void initData();
}
///*************************************继承
  /**
     * 关联当前activity显示的布局的id
     * @return
     */
    @Override
    protected int getLayoutId() {

        return R.layout.second_layout;
    }

    /**
     * 找到当前activity上面的控件
     */
    @Override
    protected void findId() {
        button = (Button) findViewById(R.id.button_01);
        button_02 = (Button) findViewById(R.id.button_02);
        radioGroup = (RadioGroup) findViewById(R.id.radio_group);
    }

    /**
     * 有关数据有关逻辑的操作写在这里面
     */
    @Override
    protected void initData() {
        //设置点击事件
        button.setOnClickListener(this);
        button_02.setOnClickListener(this);

        //radioGroup监听
        radioGroup.setOnCheckedChangeListener(this);
    }

    /**
     * radioGroup的事件
     * @param radioGroup
     * @param i
     */
    @Override
    public void onCheckedChanged(RadioGroup radioGroup, int i) {

        switch (i){

        }
    }

    @Override
    public void onClick(View view) {
        switch (view.getId()){
            case R.id.button_01:
   



                break;

            case R.id.button_02:


                break;

        }
    }

原创粉丝点击