zoukankan      html  css  js  c++  java
  • ButterKnife-5.1.2.jar(较低版本的ButterKnife)使用方法

    ButterKnife注解是编译时注解,Xutils是运行时注解。很明显编译时注解性能更高

    一、先配置好环境

    1.在工程上右键,选Properties,然后选Java Compiler,选Annotation Processing,把那三个Enable复选框都勾选上

    2.然后选择Factory Path,勾选Enable project specific settings,然后添加ButterKnife的jar包。

    二、使用

    1.在Activity的onCreate方法中注册ButterKnife,这样Activity里的所有子view都可以进行注册。

    1     @Override
    2     protected void onCreate(Bundle savedInstanceState) {
    3         super.onCreate(savedInstanceState);
    4         setContentView(R.layout.activity_main);
    5         ButterKnife.inject(this);
    6     }

    不仅仅是Activity中可以注册,其他的例如Fragment,ViewHolder等都可以注册,这里不做演示。

    还有种用法,

     1 public class BaseFragment extends Fragment {
     2     @Override
     3     public View onCreateView(LayoutInflater inflater, ViewGroup container,
     4             Bundle savedInstanceState) {
     5         View view = inflater.inflate(R.layout.fragment_default, null);
     6         ButterKnife.inject(this,view);
     7         
     8         return super.onCreateView(inflater, container, savedInstanceState);
     9     }
    10 
    11 }

    target就是赋值给this,也就是Fragment,source就是从哪里findviewbyid

    2.在类中直接注册控件

    1     @InjectView(R.id.button1)
    2     Button button1;

    这样button1就是控件R.id.button1的引用了,后面可以对这个引用进行操作了,比如setText("")等等。

    3.也可以注册点击事件

    1     @OnClick(R.id.button1)
    2     public void onClick(View view){
    3         System.out.println("test");
    4     }

    PS:现在已经出了高版本的ButterKnife,注册的方法有所不同

  • 相关阅读:
    jvm
    深度学习 机器学习
    中小规模机器学习的问题
    threading.Condition()
    实现 TensorFlow 架构的规模性和灵活性
    随机条件场
    使用TensorFlow Serving优化TensorFlow模型
    PDB、PD、PMP、RTB哪个更好?为品牌主解锁程序化购买的选择技巧
    bisecting k-means
    内核futex的BUG导致程序hang死问题排查
  • 原文地址:https://www.cnblogs.com/johnsonwei/p/5700094.html
Copyright © 2011-2022 走看看