Android studio 如何使onclick方法在onCreate()之外工作?

Android studio 如何使onclick方法在onCreate()之外工作?,android-studio,Android Studio,我在这里很困惑。。。假设您有一个新类,并且希望向该类添加一个可单击的图像按钮,可以这样做吗?我在某个地方读到它需要在onCreate方法中,该方法只能在activity\u main xml文件中找到 我还有一个错误,我找不到解决方案。当我尝试使用intent方法将用户从第一个类带到第二个类时,我的第二个类中出现了一个零构造函数错误,如果能在这里得到一些帮助,我将不胜感激,因为我花了太长时间才找到答案 public class MainActivity extends AppCompatActi

我在这里很困惑。。。假设您有一个新类,并且希望向该类添加一个可单击的图像按钮,可以这样做吗?我在某个地方读到它需要在
onCreate
方法中,该方法只能在
activity\u main xml
文件中找到

我还有一个错误,我找不到解决方案。当我尝试使用intent方法将用户从第一个类带到第二个类时,我的第二个类中出现了一个零构造函数错误,如果能在这里得到一些帮助,我将不胜感激,因为我花了太长时间才找到答案

public class MainActivity extends AppCompatActivity {


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);


    PaintView pv = new PaintView(this);
    setContentView(R.layout.activity_main);

    Button mButton = (Button) findViewById(R.id.practice);
    mButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            startActivity(new Intent(MainActivity.this, PaintView.class));
        }
    });
我的
PaintView
类太长,只是想知道您是否可以建议我应该更正代码的哪一部分

这是错误消息:

Attempt to invoke virtual method 'void android.widget.ImageView.setOnClickListener(android.view.View$OnClickListener)' on a null object reference

我将
setOnClickListener
放在我的
MainActivity.java
下,也在
PaintView.java
类下尝试了它,但没有一个有效…

startActivity(新的意图(MainActivity.this,PaintView.class));这段代码只用于启动activity而不是您理解的paint类,我确实创建了一个activity,但它仍然在java类下,对吗?我仍然会出错,但我认为我的主要问题是我的setOnClickListener。。。我总是得到空引用错误,并在这里阅读了一些帖子,但仍然无法修复它。。。我很困惑,而不是:startActivity(新意图(MainActivity.this,PaintView.class));使用以下代码:Toast.makeText(这是“单击侦听器工作”,Toast.LENGTH_LONG.show();我有以下错误:Toast.makeText(这是“单击侦听器工作”,Toast.LENGTH_LONG.show();^方法Toast.makeText(Context,CharSequence,int)不适用(参数不匹配;无法转换为上下文)方法Toast.makeText(Context,int,int)不适用(参数不匹配;无法转换为上下文)