J'ai une liste des professions (liste déroulante) dans laquelle j'ai la liste des professions. Je souhaite afficher la valeur par défaut sous la forme "Sélectionner une profession". Dans mon xml, je tape Android: Prompt = "Sélection d'une profession" mais rien ne s'affiche. Je voulais que "Select Profession" soit affiché à l'endroit où j'ai marqué en rouge
Spinner.XML
<Spinner
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:id="@+id/sp_profession"
Android:layout_weight="1"
style="@style/spinner"
Android:Prompt="Select Profession"
Android:spinnerMode="dropdown"
Android:layout_margin="2dp"></Spinner>
J'ai fait quelque chose comme ça, mais j'obtiens une valeur nulle chez Prompt_text
profession_array = getResources ().getStringArray (R.array.Profession);
profession_str = new ArrayAdapter<String> (c, R.layout.textview_spinner, profession_array);
Prompt_text.setText ("Select Profession");
profession_str.setDropDownViewResource (Android.R.layout.simple_dropdown_item_1line);
R.layout.textview_spinner
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="match_parent"
Android:id="@+id/Prompt_text"
Android:layout_height="wrap_content"
Android:paddingBottom="10dp"
Android:paddingLeft="10dp"
Android:paddingTop="10dp"
Android:minHeight="1dp"
Android:gravity="center"
Android:textSize="20sp"
Android:textColor="@Android:color/white" />
Invite est utilisé pour afficher le titre dans la liste déroulante, pas pour le texte par défaut.
Je pense que vous souhaitez définir la valeur par défaut sur spinner lorsque vous n'avez sélectionné aucune valeur dans la liste déroulante spinner. Pour cela, vous devez utiliser NothingSelectedSpinnerAdapter. Vous trouverez ci-dessous le lien pour plus de détails:
Ce n’est pas la bonne façon, mais ça marche .. Quoi que vous vouliez montrer, donnez-le comme premier élément du tableau String comme ceci
string.xml
<string-array name="Profession">
<item>Please select the Profession</item>
<item>Student</item>
<item>Prof</item>
<item>staff</item>
<item>research student</item>
en code Java lors de la lecture de l'objet spinng
Spinner profession = (Spinner)findViewById(R.id.profession);
String prof = String.valueOf(profession.getSelectedItem());
if(prof.equals("Please select the Profession"))
{
Toast.makeText(getApplicationContext(), "Please select the Profession", Toast.LENGTH_SHORT).show();
}else{
//Do your thing here....
}
vous devez définir style ---> style = "@ Android: style/Widget.Spinner" fonctionne pour moi. J'espère que cela vous aidera.
J'ai eu le même problème et style="@Android:style/Widget.Spinner"
était la solution pour moi aussi. il suffit de l'insérer dans la balise Spinner sans Android: préface