首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android ButterKnife

Android ButterKnife
EN

Stack Overflow用户
提问于 2016-11-19 15:04:06
回答 3查看 1.4K关注 0票数 0

我安装了ButterKnife --我的build.gradle如下所示:

代码语言:javascript
复制
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.3.0'
    compile 'com.jakewharton:butterknife:8.4.0'
}

我的loginActivity看起来是这样的:

代码语言:javascript
复制
package com.example.egen.forum;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Toast;
import butterknife.ButterKnife;
import butterknife.OnClick;

public class LoginActivity extends AppCompatActivity {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);
        ButterKnife.bind(this);
        Toast.makeText(getApplicationContext(), "Your toast message.",
                Toast.LENGTH_SHORT).show();
    }

    @OnClick(R.id.btnLogin) public void test() {
        Toast.makeText(getApplicationContext(), "Your toast message.",
                Toast.LENGTH_SHORT).show();
    }
}

第二个祝酒词没有出现。我在这里做错什么了?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-11-19 15:11:00

您还没有包括用于生成ButterKnife代码的注释处理器。像在GitHub页面上描述的那样

代码语言:javascript
复制
dependencies {
  compile 'com.jakewharton:butterknife:8.4.0'
  annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'
}

并应用插件:

代码语言:javascript
复制
apply plugin: 'com.jakewharton.butterknife'

否则,您的代码看起来很好。

说明: ButterKnife库使用注释处理器生成提供视图引用并执行ButterKnife注释方法的代码。如果您重新构建您的项目,并且AndroidStudio显示@OnClick注释的方法是未使用的,那么有些事情是错误的。如果注释处理器被提供并正确工作,它应该显示为已使用的,并导致生成的方法。

票数 2
EN

Stack Overflow用户

发布于 2016-11-19 15:10:46

增加这一行:

代码语言:javascript
复制
annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'

在你的build.gradle中也是如此。

有关更多信息,请参见这里

票数 1
EN

Stack Overflow用户

发布于 2016-11-19 15:18:05

好吧,蝴蝶刀是昨天,用数据库代替:https://developer.android.com/topic/libraries/data-binding/index.html。这是几乎相同的开箱即用的工具

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40694343

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档