我正在尝试使用 alertdialog 从用户那里接收数据,我第一次使用它时没有问题,但是如果我第二次使用 alertdialog 时应用程序崩溃。
final AlertDialog.Builder alert = new AlertDialog.Builder(this);
final LinearLayout marco=new LinearLayout(this);
final EditText input = new EditText(this);
final EditText input2 = new EditText(this);
final TextView nom=new TextView(this);
nom.setText("Nombre:");
final TextView ap=new TextView(this);
ap.setText("Apellido:");
input.setWidth(500);
input2.setWidth(500);
((LinearLayout)marco).addView(nom);
((LinearLayout)marco).addView(input);
((LinearLayout)marco).addView(ap);
((LinearLayout)marco).addView(input2);
alert.setTitle("Introduce Datos:");
marco.setOrientation(LinearLayout.VERTICAL);
alert.setView(marco);
alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
String value = input.getText().toString().trim();
String value2 = input2.getText().toString().trim();
Toast.makeText(getApplicationContext(), value, Toast.LENGTH_SHORT).show();
String nombre=value,apellido=value2;
db.execSQL("INSERT INTO Usuarios (codigo, nombre, apellido) " +
"VALUES (" + codigo + ", '" + nombre +"','"+apellido+"')");
codigo++;
RellenarSpinner(db);
}
});
alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
dialog.cancel();
((AlertDialog.Builder) alert).setView(marco);
}
});
final Button alta=(Button)findViewById(R.id.btnAlta);
alta.setOnClickListener(new OnClickListener(){
public void onClick(View arg0) {
alert.show();
}});