ButterKnife的简单使用
刚刚学习Android,也不知道算不算已经入门!但是总感觉自己没有什么提高,所以就把一些学习内容写一遍下来。
今天接触了ButterKnife这个第三方框架 GitHub地址:https://github.com/JakeWharton/butterknife
注:7.0.1之后的版本将已将@InjectView --->@Bind Butterknife.inject()--->ButterKnife.bind()
ButterKnife不通过反射,而是通过预编译的方式实现,关键就是省事!入正题:
- @Bind(R.id.txt_title)
- TextView txt_title;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- ButterKnife.bind(this);
- txt_title.setText("hello world");
- }
监听注入:
- @OnClick(R.id.txt_title)
- public void chage(TextView view){
- Log.i("com.alger","hello ButterKnife");
- }
还有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
ButterKnife的简单使用的更多相关文章
- Android Study 之 初识ButterKnife(8.5.1)及简单运用
LZ-Says:突然间不知道说什么好,祝大家编码无bug吧~ 前言 话说,Android开发的兄弟们都知道,每次初始化控件,设置对应的事件.写的那点过程多并且恶心.我们先一块回想下不堪的以前~ 那些年 ...
- 玩转ButterKnife注入框架
在去年这个时候,我写过一篇介绍Android注解的文章android注解使用详解,这篇文章主要是介绍了Android中的AndroidAnnotations注入框架,AA框架有它自身的一些优点,这里不 ...
- 手写butterknife来剖析其原理
基本使用: 对于butterknife库我想基本上都非常熟了,如今在项目中用它也用得非常之频繁了,不过为了学习的完整性,先来简单的回顾一下基本用法,先新建一个工程: 然后给textview增加一个点击 ...
- [旧][Android] ButterKnife 浅析
备注 原发表于2016.05.08,资料已过时,仅作备份,谨慎参考 前言 自上星期写 Retrofit 写吐之后 ... 我问大队长能不能换个其他什么东西写,大队长就说了个单词 ButterKnife ...
- 使用编译时注解简单实现类似 ButterKnife 的效果
这篇文章是学习鸿洋前辈的 Android 如何编写基于编译时注解的项目 的笔记,用于记录我的学习收获. 读完本文你将了解: 什么是编译时注解 APT 编译时注解如何使用与编写 举个例子 思路 创建注解 ...
- Kotlin编译时注解,简单实现ButterKnife
ButterKnife在之前的Android开发中还是比较热门的工具,帮助Android开发者减少代码编写,而且看起来更加的舒适,于是简单实现一下ButterKnife,相信把下面的代码都搞懂,看Bu ...
- 史上最简单的ButterKnife配置教程
网上的教程感觉都是抄来抄去,没一个靠谱的 还是自己丰衣足食搞一个ButterKnife配置教程吧.. 我的Android Studio版本是3.3. 1.dependencies中添加依赖 imple ...
- View注入框架:Butterknife简单使用
View注入框架 下载地址 1.Activity Binging 通过@Bind凝视字段,Butter Knife能够通过View的ID自己主动找到并把对应的视图布局. class ExampleAc ...
- Android开发学习之路-使用annotationProcessor配置Butterknife
Apt工具的作者宣布了不再维护该工具了,而且Android Studio也有了自己的插件,并且可以通过gradle来简单的配置. 其实用Butterknife的都知道,没有apt,onClick绑定不 ...
随机推荐
- .NET中值得体验的精妙设计
转自: http://developer.51cto.com/art/201104/255455_all.htm .NET 是 Microsoft XML Web services 平台.MEF是.N ...
- Spring Tool Suite中的Tomcat启动状态修改java代码保存立刻生效
- adb上使用cp/mv命令的替代方法(failed on '***' - Cross-device link解决方法)
今天把玩手头的那部Android手机时碰到一个问题,即因为权限问题无法将文件复制到/system/和/data/分区中,经过一番折腾后,算是解决了,在此记录一笔.本方所涉及到的命令输入,均用斜体字表示 ...
- android的m、mm、mmm编译命令
android的m.mm.mmm编译命令的使用 android源码目录下的build/envsetup.sh文件,描述编译的命令 - m: Makes from the top of th ...
- PLSQL_PLSQL调优健康检查脚本SQLHC(案例)
2014-08-23 Created By BaoXinjian
- OpenCV实现KNN算法
原文 OpenCV实现KNN算法 K Nearest Neighbors 这个算法首先贮藏所有的训练样本,然后通过分析(包括选举,计算加权和等方式)一个新样本周围K个最近邻以给出该样本的相应值.这种方 ...
- alpha融合
//alpha融合 //作者:sandy //时间:2015-10-6 //将一只狗的头像融合在蜗牛头上 #include <cv.h> #include <highgui.h> ...
- ylbtech-dbs:ylbtech-6,record(生活记录)
ylbtech-dbs:ylbtech-6,record(生活记录) -- =============================================-- DatabaseName:R ...
- 运用BigDecimal精确计算
package com.wzh.test; import java.math.BigDecimal; public class test { /** * @param args */ public s ...
- bootstrap-响应式工具和打印样式
响应式工具: <div class="container"> <!-- 针对不同的宽度 展示或隐藏相关内容 visible-lg-block 显示 hidden- ...