working studio setonclicklistener not has activity android

android - studio - setOnClickListener(View.OnClickListener) en el tipo View no es aplicable para los argumentos(SequencerActivity) back.setOnClickListener(this);



public void onclick view view android (7)

Aún no puede resolver el tipo de error import View.OnClickListener; luego mueva el cursor en la Vista en la import View.OnClickListener; Se abrirá una ventana emergente y luego elija la opción Organizar importaciones.

Utilice simplemente import View.OnClickListener; en la cima.

Quiero mostrar una imagen al hacer clic en el botón, pero tengo tres errores en mi código. Que pasa

  1. class name "SequencerActivity"

    El tipo SequencerActivity debe implementar el método abstracto heredado DialogInterface.OnClickListener.onClick(DialogInterface, int) .

  2. next.setOnClickListener(this);

    El método setOnClickListener(View.OnClickListener) en el tipo View no es aplicable para los argumentos (SequencerActivity) .

  3. onClick(View v)

El método onClick(View) de tipo SequencerActivity debe anular o implementar un método de supertipo.

Aquí está el código que da esos errores:

public class SequencerActivity extends Activity implements OnClickListener { private int imageCounter = 0; private ImageView imageLoader; private int[] imageList = {R.drawable.f03, R.drawable.f04, R.drawable.f05, R.drawable.f06}; @Override public void onCreate(Bundle savedInstanceState) { setContentView(R.layout.main);//this one is the common parent layout for all image views super.onCreate(savedInstanceState); /*requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);*/ //int image1 = R.drawable.image_w_lbl_0; imageLoader = (ImageView) findViewById(R.id.imageLoader); //imageLoader.setImageResource(image1); Button next = (Button) findViewById(R.id.next); Button back = (Button) findViewById(R.id.back); next.setOnClickListener(this); back.setOnClickListener(this); back.setEnabled(false); //show the default image this.loadImage(imageList[imageCounter]); } @Override public void onClick(View v) { int imagePath = 0; // TODO Auto-generated method stub switch (v.getId()) { case R.id.next: Log.i("Tag","tag"); if(imageCounter < imageList.length) { imageCounter++; imagePath = imageList[imageCounter]; if (imageCounter==(imageList.length)-1) { { ImageButton next=(ImageButton)findViewById(R.id.next); next.setEnabled(false); } } else { ImageButton back=(ImageButton)findViewById(R.id.back); back.setEnabled(true); } } break; case R.id.back: if(imageCounter > 0) { imageCounter--; imagePath = imageList[imageCounter]; if (imageCounter==0) { ImageButton back=(ImageButton)findViewById(R.id.back); back.setEnabled(false); } else { ImageButton next=(ImageButton)findViewById(R.id.next); next.setEnabled(true); } } break; } this.loadImage(imagePath); } private void loadImage(int imagePath) { imageLoader.setImageResource(imagePath); } }


El OnClickListener que estás implementando es el incorrecto. Dice que es DialogInterface.OnClickListener , mientras que probablemente quieras View.OnClickListener . Puede corregir eso en la declaración de import correspondiente.


El OnClickListener que implementa no es correcto, intente implementar View.OnClickListener y no DialogInterface.OnClickListener.

Puedes ver eso en tu importación.

import View.OnClickListener

en lugar de

import DialogInterface.OnClickListener


Haz una cosa

eliminar import android.content.DialogInterface.OnClickListener; e importar android.View.View.OnClickListener

Esto solucionará el problema

Feliz codificacion


Implementar View.view.onClickListener


Solo haz una cosa. Use la declaración "importar android.view.View.OnClickListener" en la parte superior del programa.


necesitas importar import android.view.View.OnClickListener; Así que tu código parece

import android.view.View.OnClickListener; public class MainActivity extends Activity implements OnClickListener{ // Your oncreate() and rest of all code } // you should have method as below @Override public void onClick(View v) { // TODO Auto-generated method stub if(v.getId() == R.id.editText1) // just for instance { .. your onclick handle code } }