我在ActivityMain.java中创建按钮
编译器无法识别onSetClickListener。我想念什么?

package com.example.mydiceapp;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

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


    Button rollButton = findViewById(R.id.blahblah);

    rollButton.setOnClickListener(new View.OnClickListener());

}

最佳答案

您的代码返回错误,因为您将可操作的代码放置在方法之外。如果仔细观察,会发现生成错误的行未包含在任何方法中。

除变量声明和赋值外,动作应包含在方法内。因此,在任何方法中都未包含setOnClickListener调用显然将不起作用。只需将这两行移动到onCreate()方法中,一切都会好起来的。这是一个例子:

...

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

     Button rollButton = findViewById(R.id.blahblah);
     rollButton.setOnClickListener(new View.OnClickListener());
}

...

关于java - 编译器无法识别setOnClickListener(…);,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59284776/

10-09 05:08