如何让Butterknife工作?

Tom*_*net 0 android butterknife

我在我的android项目中使用Butterknife.我之前使用过这个,但由于某种原因它不再适用于新的更新.

这是我的设置:

(App Module)build.gradle:

compile 'com.jakewharton:butterknife:8.4.0'
Run Code Online (Sandbox Code Playgroud)

活动:

@BindView(R.id.navigation_pager) ViewPager mViewPager;

/.../

@Override
protected void onCreate(Bundle savedInstanceState) {
    /...
    /...
    ButterKnife.bind(this);
Run Code Online (Sandbox Code Playgroud)

堆栈跟踪:

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v4.view.ViewPager.setAdapter(android.support.v4.view.PagerAdapter)' on a null object reference
Run Code Online (Sandbox Code Playgroud)

为了Butterknife上班,我错过了什么?

谢谢.

Col*_*ire 5

你需要添加:

classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
Run Code Online (Sandbox Code Playgroud)

在Project gradle文件中

并添加:

apt 'com.jakewharton:butterknife-compiler:8.4.0'
Run Code Online (Sandbox Code Playgroud)

这个在顶部:

apply plugin: 'android-apt'
Run Code Online (Sandbox Code Playgroud)

让奶油刀上班

有关更多信息,请参阅此链接:https://github.com/JakeWharton/butterknife