博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ButterKnife的简单使用
阅读量:4686 次
发布时间:2019-06-09

本文共 1087 字,大约阅读时间需要 3 分钟。

 刚刚学习Android,也不知道算不算已经入门!但是总感觉自己没有什么提高,所以就把一些学习内容写一遍下来。

 今天接触了ButterKnife这个第三方框架 GitHub地址:

 注:7.0.1之后的版本将已将@InjectView --->@Bind  Butterknife.inject()--->ButterKnife.bind()

  ButterKnife不通过反射,而是通过预编译的方式实现,关键就是省事!入正题:

1   @Bind(R.id.txt_title)2     TextView txt_title;3     @Override4     protected void onCreate(Bundle savedInstanceState) {5         super.onCreate(savedInstanceState);6         setContentView(R.layout.activity_main);7         ButterKnife.bind(this);8         txt_title.setText("hello world");9     }

 

监听注入:

1   @OnClick(R.id.txt_title)2     public  void chage(TextView view){3         Log.i("com.alger","hello ButterKnife");4     }

还有Fragment注入、ViewHolder注入都大差不多

ButterKnife.bind(this,view)这个重载函数

 注意 在Fragment、ViewHolder注入时千万不能用ButterKnife.bind(view),报错,这个坑了我好久

最新版本8.2.1,发现gradle光写

compile 'com.jakewharton:butterknife:8.2.1’,点击时没什么效果, 需加入
项目gradle :
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' 模块gradle:
apply plugin: 'com.neenbedankt.android-apt' apt 'com.jakewharton:butterknife-compiler:8.2.1' 有机会需要去学习一下apt

转载于:https://www.cnblogs.com/lyysz/p/5219762.html

你可能感兴趣的文章
详谈kubernetes滚动更新-1
查看>>
JQuery学习三(隐式迭代和节点遍历)
查看>>
铁乐学Python_day06-整数和字符串小数据池
查看>>
const char *p" 和 "char * const p" 有何区别
查看>>
【机器学习实验】使用朴素贝叶斯进行文本的分类
查看>>
Python心得基础篇【10】装饰器
查看>>
更改tomcat端口号方法,Several ports (8005, 8080, 8009)
查看>>
软件工程理论、方法与实践(第六章)
查看>>
交换机,路由器,集线器,有什么区别
查看>>
使用 Windows Vista 的凭据提供程序创造自定义的登录体验
查看>>
Coding之路——重新学习C++(9):解决异常
查看>>
[大话数据结构-读书笔记] 算法
查看>>
打开和写入word文档
查看>>
Tips
查看>>
极客时间_Vue开发实战_05.Vue组件的核心概念(1):属性
查看>>
阶段1 语言基础+高级_1-3-Java语言高级_02-继承与多态_第7节 内部类_17_接口作为方法的参数和或返回值...
查看>>
SQL Server 权限管理
查看>>
ajax.net updatepanel 中数据量过大导致 500 错误
查看>>
Saiku部分函数解析(八)
查看>>
Hdu 2100 Lovekey 模拟大数相加<进位转换..>
查看>>