解析ButterKnife

ButterKnife从严格意义讲不算是依赖注入框架,它只是专注于 Android系统的View注入框架,并不支持其他方面的注入。它可以减少 大量的findViewById以及setOnClickListener代码,简化代码并提升开发 效率。

1.ButterKnife的注解使用方法
(1)添加依赖库
(2)绑定控件
用注解@BindView绑定控件id

class LoginActivity : AppCompatActivity() {

@InjectView(ID = R.id.userName)
val editText: EditText? = null
@InjectView(ID = R.id.password)
val editText1: EditText? = null
@InjectView(ID = R.id.login)
val button: Button? = null
@InjectView(ID = R.id.newUser)
val text: TextView? = null

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_login)

    ViewUtils.bind(this)
}

(3)绑定资源
可以用注解@BindString、@BindArray、@BindBool、 @BindColor、@BindDimen、@BindDrawable和@BindBitmap。这里我 们拿@BindString、@BindArray和@BindDimen来进行举例。

(4)绑定监听
用@OnClick来对“点击事件”进行监听,同理也可以用 @OnLongClick来对“长按点击事件”进行监听
@OnClick(value = R.id.login)
fun OnClick(){
Toast.makeText(this,“hello”,Toast.LENGTH_SHORT).show()
}

(5)可选绑定 @BindView或者其他的注解操作符,如果不能找到目标资源,则会 引发异常。

3.ButterKnife原理解析
ButterKnife 采用的是编译时注解

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值