OnClick ButterKnife,没有任何反应

时间:2017-01-25 23:13:21

标签: java android buttonclick butterknife

我正在尝试使用ButterKnife来点击。我做了下面的代码而没有任何反应,我在互联网上观看了教程,他们做的和我一样。

这是代码

@BindView(R.id.startButton) protected ImageButton mStartButton;

@OnClick(R.id.startButton)
public void startTest(){
    Toast.makeText(this, "testing", Toast.LENGTH_LONG).show();
}

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    ButterKnife.bind(MainActivity.this);

}

如果我把方法设为startTest();在OnCreate中,当应用程序第一次运行时会调用toast,这表明ButterKnife正在运行。但是我只需要在点击按钮时发生这种情况。

由于

3 个答案:

答案 0 :(得分:4)

您提到compile 'com.jakewharton:butterknife:8.4.0'文件中有build.gradle。我想你可能会错过相应的编译器。将其添加到您的dependencies部分:

annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'

答案 1 :(得分:1)

我能看到的唯一两个原因是

  1. 'protected'需要从ImageView中删除
    1. 'startButton'实际上并未在activity_main
    2. 中定义

答案 2 :(得分:0)

我认为你的onCreate方法应该是公开的。试试吧。