今天也是开始写了一个新的项目就重新导了Butterknife注解框架,直接在项目依赖中添加
compile 'com.jakewharton:butterknife:8.5.1'
但是发现textView.setText(”设置文字“)时一直报Caused by: java.lang.NullPointerException并且点击控件时没有任何反应,
使用方法:
public class MainActivity extends AppCompatActivity { @BindView(R.id.tv) TextView tv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ButterKnife.bind(this); tv.setText("测试"); } }
因为在使用butterknife7.0.0时一直都是这么使用,不知道哪出了问题,经过一顿猛查,发现新版本和就版本不光在编译版本有差异,在添加依赖时也有差异特此写下使用步骤:
一,在项目工程gradle依赖中添加如下代码:
dependencies { classpath 'com.android.tools.build:gradle:3.0.1' classpath 'com.jakewharton:butterknife-gradle-plugin:8.5.1' //需要添加的代码 // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files }
二,在项目gradle中添加
apply plugin: 'com.jakewharton.butterknife'
compile 'com.jakewharton:butterknife:8.5.1' annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'
如图:
至此就可以正常使用该注解框架了。