首页 > 解决方案 > 'OnClickListener' 是抽象的;无法实例化并且无法解析符号“v”

问题描述

package com.example.application;

import androidx.appcompat.app.AppCompatActivity;

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

public class MainActivity extends AppCompatActivity {

    private Button button2;


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

        button2 = findViewById(R.id.button2);
        button2.setOnClickListener(new View.OnClickListener());
        @Override
        public void onClick(View v)
                Intent intent = new Intent(this, ClaimApplication.class);
                startActivity(intent);


    }
}

我有错误,例如“OnClickListener”是抽象的;无法实例化并且无法解析符号“v”我是一名新程序员,所以请有人帮忙!

标签: javaandroid

解决方案


你不能实例化抽象类,所以 newView.OnClickListener()给出了错误。正如 Android Doc ( https://developer.android.com/reference/android/widget/Button ) 中所说,试试这个

     button.setOnClickListener(new View.OnClickListener() {
         public void onClick(View v) {
             // Code here
         }
     });

为了使代码尽可能简单,我建议在onClick(),

     button.setOnClickListener(new View.OnClickListener() {
         public void onClick(View v) {
             myMethod();
         }
     });
}

public void myMethod(){
    //codehere
}

推荐阅读