0

À l'heure actuelle, je ne peux voir les valeurs extraites que lorsque j'appuie sur le bouton OK de la boîte de dialogue. Mais je veux le voir quand le dialogue d'alerte apparaît. Je sais que j'ai mis le code d'affichage à l'intérieur du .setPositiveButton ("OK", mais même quand j'ai essayé de le mettre avant cela, ça n'a pas marché.J'ai une certaine idée que je dois utiliser cette setview (addView) mais ne savoir comment S'il vous plaît aidez-moicomment remplir le alertdialog à partir des valeurs interrogées à partir de la base de données?

enter code here 
private void populateFields() { 
    LayoutInflater inflater=LayoutInflater.from(this); 
    final View addView=inflater.inflate(R.layout.add_country, null); 

    new AlertDialog.Builder(this) 
    .setTitle("Edit country/year") 
    .setView(addView) 
    .setPositiveButton("OK", 
    new DialogInterface.OnClickListener() { 
    public void onClick(DialogInterface dialog,int whichButton) { 
    Cursor c = 
     getContentResolver().query                 (CONTENT_URI.buildUpon           ().appendPath(String.valueOf(mRowId)).build(), null, null, null, null); 
    /* Read alert input */ 
    EditText editCountry =(EditText)addView.findViewById(R.id.editCountry); 
    EditText editYear =(EditText)addView.findViewById(R.id.editYear); 
    //System.out.println(c.getString(c.getColumnIndex("country"))); 
    editCountry.setText(c.getString(c.getColumnIndex("country"))); 
    editYear.setText(c.getString(c.getColumnIndex("year"))); 
       } 
       }) 
    .setNegativeButton("Cancel", 
     new DialogInterface.OnClickListener() { 
    public void onClick(DialogInterface dialog,int whichButton) { 
     // ignore, just dismiss 
    } 
}) 
    .show(); 
} 

Répondre

3

Essayez de mettre votre code juste après avoir gonflé le point de vue quelque chose comme ceci:...

private void populateFields() { 
LayoutInflater inflater=LayoutInflater.from(this); 
final View addView=inflater.inflate(R.layout.add_country, null); 

Cursor c = getContentResolver().query(CONTENT_URI.buildUpon().appendPath(String.valueOf(mRowId)).build(), null, null, null, null); 
/* Read alert input */ 
EditText editCountry =(EditText)addView.findViewById(R.id.editCountry); 
EditText editYear =(EditText)addView.findViewById(R.id.editYear); 

editCountry.setText(c.getString(c.getColumnIndex("country"))); 
editYear.setText(c.getString(c.getColumnIndex("year"))); 

new AlertDialog.Builder(this) 
.setTitle("Edit country/year") 
.setView(addView) 
.setPositiveButton("OK",null) 
.setNegativeButton("Cancel",null) 
.show(); 
} 
+0

grâce, il a travaillé comme un charme – SASM

+0

heureux de vous aider :).! –

Questions connexes