尝试在单独的类中实现onClickListener但无法解析findViewById

时间:2018-02-08 14:43:14

标签: java android findviewbyid

我正在尝试创建一个单独的类来为我的按钮和EditTexts实现onClickListeners,但我一直收到错误,说无法解析findViewById。我已经插入了以下代码:

n = np.where(np.sum(A[:,2:],axis=1) >0)[0][-1]
B = A[:n]

1 个答案:

答案 0 :(得分:1)

这是因为findViewById方法是android.app.Activity类的成员,即它只能从Activity里面的匿名类中看到。 因此,为了在单独的类中定义onClickListener,您应该将视图传递给它,如下所示:

public class MyOnClickListener implements View.OnClickListener {

    @Override
    public void onClick(View v) {

    }
}

以及您活动的某个地方:

Button button = (Button) findViewById(R.id.btn_cancel)
button.setOnClickListener(new MyOnClickListener());