ButterKnife未绑定视图并导致异常

问题描述 投票:0回答:2

我正在使用Butterknife(10.2.1)绑定项目中的视图。我最近将其迁移到了AndroidX。

尽管我正在根据此处的说明通过致电进行所有操作

@BindView(R.id.layout_purchase_item1)
View layout_purchase_item1;

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_purchase);
        ButterKnife.bind(this);
        layout_purchase_item1.setOnClickListener(this);

它不起作用,并给我以下例外:

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.view.View.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
        at com.sdf.blurphoto2.billings.PurchaseActivity.onCreate(PurchaseActivity.java:108)

显然,这里的视图没有绑定,但是我在布局文件中没有做错任何事情,因为仅用findViewById替换绑定即可处理异常。但是我想用牛刀。有任何想法吗?

java android butterknife
2个回答
0
投票

您可以使用以下依赖项更新build.gradle吗?

implementation 'com.jakewharton:butterknife:10.2.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:10.2.1'

更新后,用黄油刀注入视图。


0
投票

在gradle文件中的buildTypes标签下添加以下行

   ` lintOptions {
    disable 'RestrictedApi'
}
compileOptions {
    sourceCompatibility = '1.8'
    targetCompatibility = '1.8'
}

以及在我的项目gradle文件中

classpath 'com.android.tools.build:gradle:3.4.2'

在我的情况下,在相同的10.2.1版本中可以正常工作

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.