No se puede resolver el constructor (Android Intent)

Estoy tratando de crear un botón simple que se abre a una actividad diferente:

package com.example.xxx.buttonexample; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.widget.Button; import android.view.View; import android.view.View.OnClickListener; public class MainActivity extends Activity { Button button; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); btnClick(); } public void btnClick() { button = (Button) findViewById(R.id.button1); button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(this,emergencyIntent.class); startActivity(intent); } }); } } 

Aquí está mi archivo emergencyIntent.class:

 package com.example.xxx.buttonexample; import android.app.Activity; import android.os.Bundle; public class emergencyIntent extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // The activity is being created. } } 

He recibido un error:

"No se puede resolver la intención del constructor (anónimo android.view.View.OnClickListener, java.lang.Class (com.example.xxx.buttonexample.emergencyIntent)) '.

Simplemente reemplace this en el primer parámetro con MainActivity.this . me gusta:

  Intent intent = new Intent(MainActivity.this,emergencyIntent.class); 

El error se debe a que lo está escribiendo en public void onClick(View v) , donde ' this ' significará instancia de clase anónima que implementa View.OnClickListener . Mientras que el primer parámetro en Intent del constructor Intent(Context context, Class<?> cls) requiere el contexto de la actividad.

Reemplace su intención con la siguiente:

Intención intention = new Intent (MainActivity.this.getActivity (), emergencyIntent.class);

  package com.example.xxx.buttonexample; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.widget.Button; import android.view.View; import android.view.View.OnClickListener; public class MainActivity extends Activity { Button button; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button = (Button) findViewById(R.id.button1); button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(MainActivity.this,emergencyIntent.class); startActivity(intent); //Or Intent intent = new Intent(getApplicationContext(),emergencyIntent.class); } }); } } 

Package com.example.xxx.buttonexample;

 import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.widget.Button; import android.view.View; import android.view.View.OnClickListener; public class MainActivity extends Activity { Button button; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button = (Button) findViewById(R.id.button1); button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(MainActivity.this,emergencyIntent.class); 

StartActivity (intención); // O Intención intention = new Intent (getApplicationContext (), emergencyIntent.class);

  } 

}) # # Título ##

  • La fusión de clips mp4 con mp4parser hace que el audio detrás del video
  • Función de paso como parámetro en java
  • Android ejecuta comando bash en la aplicación
  • Tiempo de espera en DefaultHttpClient
  • Cómo obtener el rectángulo inscrito en un clip de lienzo
  • Android-transparent RelativeLayout
  • Diseño de filas ListView de Android ignorando el relleno
  • Clase de aplicación que se ejecuta en el hilo de interfaz de usuario o?
  • Fuente impresionante en la vista de lista de Android no funciona
  • ¿Correcta manera de agregar una nueva carpeta de recursos en Android Studio?
  • Android - View.requestLayout no funciona en OnLayoutChangeListener
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.