2016-08-22 1 views
0

Je montre des valeurs dans spinner. Je veux afficher le texte par défaut comme "Select Table". Voici mon codeComment définir le texte par défaut dans Android Spinner

JSONArray tablearray = tablenamejson.getJSONArray("data"); 
    for (int i = 0; i < tablearray.length(); i++) { 
    JSONObject jsonObject = tablearray.getJSONObject(i); 
    String table_id = jsonObject.getString(TAG_TABLE_ID); 
    String table_name = jsonObject.getString(TAG_TABLE_NAME); 
    ArrayList<TableData> tableDatas = new ArrayList<TableData>(); 
    TableData tables = new TableData(); 
    tables.setTblId(table_id); 
    tables.setTblName(table_name); 
    tableDatas.add(tables); 
    } 

    adapter = new TableAdapter(tableDatas, getActivity()); 
    spinner.setAdapter(adapter); 
+0

Je recommande d'ajouter des informations plus précises dans votre titre. Formatage de votre code pour être plus lisible, et poser une question spécifique (avec des informations sur ce qui ne fonctionne pas, etc.) – threeve

+0

Ceci est la question exacte et je suis reçu réponse et ça fonctionne bien. Merci pour votre recommandation. –

Répondre

3

première de tout ce que vous devez déclarer

ArrayList<TableData> tableDatas = new ArrayList<TableData>(); 

extérieur forloop que vous ajoutez toutes les entrées qui list

ajoutez votre valeur par défaut d'abord à l'intérieur list puis écrire forloop pour ajouter tous les valeurs dans json array puis utilisez spinner.setSelection(0); méthode pour afficher la valeur de défault dans spinner comme vous l'avez ajouté en 1ère position dans un array

code suivant est

ArrayList<TableData> tableDatas = new ArrayList<TableData>(); 

//for default value 
TableData tables = new TableData(); 
tables.setTblId(0); 
tables.setTblName("Select"); 
tableDatas.add(tables); 

JSONArray tablearray = tablenamejson.getJSONArray("data"); 
for (int i = 0; i < tablearray.length(); i++) { 
    JSONObject jsonObject = tablearray.getJSONObject(i); 
    String table_id = jsonObject.getString(TAG_TABLE_ID); 
    String table_name = jsonObject.getString(TAG_TABLE_NAME); 
    TableData tables = new TableData(); 
    tables.setTblId(table_id); 
    tables.setTblName(table_name); 
    tableDatas.add(tables); 
} 

adapter = new TableAdapter(tableDatas, getActivity()); 
spinner.setAdapter(adapter); 
spinner.setSelection(0); 
+1

Son fonctionnement. Vraiment merci nikhil –

1

Vous pouvez utiliser spinner .setSelection() pour cela.

String myString = "Select Table"; //default value for spinner 

ArrayAdapter myAdap = (ArrayAdapter) mySpinner.getAdapter(); 

int spinpos= myAdap.getPosition(myString); 

//set the default according to value 
spinner.setSelection(spinpos);