美文网首页
Android注解框架的使用

Android注解框架的使用

作者: CharlesCheng | 来源:发表于2017-09-12 15:53 被阅读0次

    1、项目依赖

    classpath'com.jakewharton:butterknife-gradle-plugin:8.8.1'

    app:

    applyplugin:'com.jakewharton.butterknife'

    compile'com.jakewharton:butterknife:8.8.1'

    annotationProcessor'com.jakewharton:butterknife-compiler:8.8.1'

    androidStudio下载插件【Android ButterKnife Zelezny】

    2、功能介绍

    插件使用

    选择需要findViewByID 的元素和需要点击事件的打勾

    1、绑定控件

    2、绑定资源

    3、绑定监听

    【单件】@OnClick(R.id.btn)  多个的写法 @OnClick({R.id.name, R.id.name1, R.id.name2})

    【长按】@OnLongClick(R.id.btn)

    【EditText改变监听】如下:

    @OnTextChanged(value = R.id.et_test,callback =OnTextChanged.Callback.BEFORE_TEXT_CHANGED)

    @OnTextChanged(value = R.id.et_test,callback = OnTextChanged.Callback.TEXT_CHANGED)

    @OnTextChanged(value = R.id.et_test,callback = OnTextChanged.Callback.AFTER_TEXT_CHANGED)

    【OnTouch触摸事件】@OnTouch(R.id.name)

    【OnItemClick】@OnItemClick(R.id.mLVItems)

    【OnItemLongClick】@OnItemLongClick(R.id.mLVItems)

    【OnItemSelected】@OnItemSelected(R.id.mLVItems)

    4、可选绑定

    在使用@BindView或其他的注解操作符,如果不能找到目标资源,会引发异常,为了防止异常可以添加@Nullable注解

    Fragment和Adapter中使用ButterKnife

    fragment中的用法

    @BindView(R.id.tv)

    TextView mTv;

    @Override

    public view onCreateView(LayoutInflater inflater,ViewGroup container,Bundle saveInstanceState){

           View view  = inflater.inflater(R.layout.fragment_layout,container,false);

           Butterknife.bind(this,view);

           return view;

    }

    Adapter中的用法

    关键代码:

    class ViewHolder{

           @BindView(R.id.tv)

           TextView mTv;

            public ViewHolder(View view){

                  @ButterKnife.bind(this,view)

             }

    }

    剩余代码和平常一样调用即可

    相关文章

      网友评论

          本文标题:Android注解框架的使用

          本文链接:https://www.haomeiwen.com/subject/taucsxtx.html