set OnClickListener(this) 오류 보고--set OnClickListener can't be applied to MainActivity

문제 설명


다음 코드의 11줄과 12줄this, 그리고 꼴찌 4줄@Override에는 붉은 파도선이 있는데 오류 메시지는 다음과 같다.
setOnClickListener(android.view.View.OnClickListener) in View cannot be applied to (com.example.YourUserName.YourModuleName.MainActivity)
public class MainActivity extends AppCompatActivity {
    ...

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

		...
        
        imgChooseButton.setOnClickListener(this);
        startColoringButton.setOnClickListener(this);


    }

    @Override
    public void onClick(View v){

    }

해결 방법

MainActivity클래스의 정의는 다음과 같아야 한다.
public class MainActivity extends AppCompatActivity implements View.OnClickListener

수정된 전체 코드는 다음과 같습니다.
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    ...

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

		...
        
        imgChooseButton.setOnClickListener(this);
        startColoringButton.setOnClickListener(this);


    }

    @Override
    public void onClick(View v){

    }

좋은 웹페이지 즐겨찾기