android监听器接口变量null

时间:2017-02-13 11:09:59

标签: android interface

我参考各种代码并写如下。

public CustomView bbv;
bbv.setOnVariableChanged(new CustomView.VariableChanger() {  //error(line:132)
    @Override
    public void onVariableChanged() {
         real = true;
    }

});

VariableChanger onVariableChanged;

run(){

    ....
    if (count == 10) {
        if (onVariableChanged != null)
            onVariableChanged.onVariableChanged();
}

public void setOnVariableChanged(VariableChanger listener) {
    this.onVariableChanged = listener;
}

public interface VariableChanger {
    void onVariableChanged();
}

当计数为10时,

bbv.setOnVariableChanged(new CustomView.VariableChanger()抛出错误。

我不知道出了什么问题。

感谢您的回答。

java.lang.NullPointerException: Attempt to invoke virtual method 'void hci.parrot_bebop.view.BebopVideoView.setOnVariableChanged(hci.parrot_bebop.view.BebopVideoView$VariableChanger)' on a null object reference 
    at hci.parrot_bebop.activity.BebopActivity$1$1.run(BebopActivity.java:132)
    at java.util.Timer$TimerImpl.run(Timer.java:284)

1 个答案:

答案 0 :(得分:0)

  

Piyush的评论

我的CustomView继承自TextureView。

所以在初始化部分 “无法使用”CustomView bbv = new CustomView()“。

但是,我可以使用findviewbyid()或使用new来初始化它。

等, “bbv =(CustomView)findViewById(R.id。你的视图ID )”