butterknife的配置,使用。

(1)ButterKnife是什么?

         在开发过程中,我们总是会写大量的findViewById和点击事件,像初始view、
         设置view监听这样简单而重复的操作让人觉得特别麻烦,当然不会偷懒的程序员不是好程序员,
        自然也出现了相应的解决方案--依赖注入。而ButterKnife则是依赖注入中相对简单易懂的很不错的开源框架,
       (其实ButterKnife也不算严格意义上的依赖注入,后面文章中会做分析)。但ButterKnife作为JakeWharton
          大神写的注解框架被广泛应用于android开发中,自然也有它的过人之处。下面对它的使用过程进行描述。

(2)ButterKnife 有哪些优势?

        它的具体优势:
       1.强大的View绑定和Click事件处理功能,简化代码,提升开发效率
       2.方便的处理Adapter里的ViewHolder绑定问题
       3.运行时不会影响APP效率,使用配置方便
       4.代码清晰,可读性强
(3)环境配置:
       一:因为要使用Androidannotations注解,需要给eclipse配置Annotation Processin
             配置方法:
               Help -> Install New Sofwere -> Work with下拉菜单选择“Juno - http://download.eclipse.org/releases/juno”->
               然后在下面的选择框中选择Programming Language下的Eclipse Java Development Tools,然后Next,下载需要一段时间,
               下载完之后重启Eclipse,Annotation Processin就配置成功了。
       二:ButterKnife配置:
          
           项目工程 -> Properties -> Java Compiler -> Annation Processin 下的Factory Path ->
           勾选右侧最上边的enable project specific settings ->Add External Jars —>将butterknife Jar包导进去即可。

       三:
   
          
         @Bind(R.id.button_01) Button button_01; ==  (Button)findViewById(R.id.button_01)
         @Bind(R.id.button_02) Button button_02;
         @Bind(R.id.textview_01) TextView textView_01;
         @Bind(R.id.textview_02) TextView textView_02;
           
        为button添加监听事件
         @OnClick(R.id.button_01)
         public void play(Button  button){
           逻辑代码
        }

    
         为多个button添加监听事件
         @OnClick({R.id.button_01,R.id.button_02})
         public void play(Button  button){
           逻辑代码

          }
       
       

       //批量设置button背景色为红色

//        ButterKnife.Action<View> ChangeColors =new ButterKnife.Action<View>() {
//            public void apply(View arg0, int arg1) {
//                arg0.setBackgroundColor(Color.RED);
//            };
//        };
//         ButterKnife.apply(buttonslist, ChangeColors) ;  

         

          //批量设置背景不同颜色
        ButterKnife.Setter<View, List<Integer>> ChangeColor = new ButterKnife.Setter<View, List<Integer>>() {
            
            @Override
            public void set(View view, List<Integer> arg1, int arg2) {
                    view.setBackgroundColor(arg1.get(arg2))    ;            
            }
            
        };
        List<Integer> colorList = new ArrayList<Integer>();
        colorList.add(Color.BLUE);
        colorList.add(Color.CYAN);
        colorList.add(Color.CYAN);
        colorList.add(Color.GREEN);
        colorList.add(Color.BLUE);
        colorList.add(Color.RED);
        colorList.add(Color.WHITE);
        colorList.add(Color.YELLOW);
        colorList.add(Color.GREEN);
        colorList.add(Color.LTGRAY);
        
        ButterKnife.apply(buttonslist, ChangeColor,colorList);
        






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值