No estoy seguro de lo que hice, pero por un momento mi código funcionó sin problemas y después de agregar una nueva actividad, el error Intentó finalizar un evento de entrada, pero el receptor del evento de entrada ya se eliminó.
Necesito ayuda sobre cómo solucionar esto.
package proj.com.desperationfinals;
import android.content.DialogInterface;
import android.content.Intent;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.Editable;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
EditText editText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editText = (EditText) findViewById(R.id.editText);
}
public void validate (View view){
String word = editText.getText().toString();
if(word.contentEquals("Sir Zalameda")) {
AlertDialog.Builder Alert = new AlertDialog.Builder(this);
Alert.setMessage("Correct!")
.create();
Alert.show();
Intent i = new Intent(MainActivity.this, Main2Activity.class);
startActivity(i);
}else{
AlertDialog.Builder Alert = new AlertDialog.Builder(this);
Alert.setMessage("Mali!")
.create();
Alert.show();
}
}
}
Solución del problema
El problema está en la siguiente sección:
AlertDialog.Builder Alert = new AlertDialog.Builder(this);
Alert.setMessage("Correct!")
.create();
Alert.show();
Intent i = new Intent(MainActivity.this, Main2Activity.class);
startActivity(i);
Está recibiendo el error porque está tratando de mostrar una alerta justo antes de comenzar una nueva actividad. Ahora, el 'receptor' para el diálogo es la actividad actual y tan pronto como comience una nueva actividad que se cambia. Para abordar este problema, puede intentar algo como esto:
Alert.setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
Intent i = new Intent(MainActivity.this, Main2Activity.class);
startActivity(i);
}
TL;DR: No se puede mostrar una alerta justo antes de comenzar una nueva actividad.
No hay comentarios.:
Publicar un comentario