gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-02 11:39:28 26 4
gpt4 key购买 nike

我正在尝试创建一个单独的类来为我的按钮和 EditText 实现 onClickListeners,但我不断收到一条错误消息,指出 findViewById 无法解析。我已插入以下代码:

package com.example.afa.geobuddy;

import android.view.View;
import android.widget.Button;
public class onClickListener implements View.OnClickListener {
Button cancel_button = (Button) findViewById(R.id.btn_cancel);
@Override
public void onClick(View v) {

}
}

最佳答案

发生这种情况是因为 findViewById 方法是 android.app.Activity 类的成员,即它只能从 Activity 内的匿名类中可见。因此,为了在单独的类中定义 onClickListener,您应该将 View 传递给它,如下所示:

public class MyOnClickListener implements View.OnClickListener {

@Override
public void onClick(View v) {

}
}

以及您 Activity 中的某个位置:

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

关于java - 尝试在单独的类中实现 onClickListener 但无法解析 findViewById,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48688114/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com