Este es el elemento spinner con el modo de diálogo personalizado y whitout promt:
<Spinner
android:id="@+id/spinner_metatag"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:entries="@array/search_adv"
/>
El elemento de matriz en el que el valor predeterminado se putts en la posición 0:
<string-array name="search_adv">
<item>@string/search_adv_prompt</item>
<item>@string/search_adv_title</item>
<item>@string/search_adv_desc</item>
<item>@string/search_adv_autore</item>
....
</string-array>
Los elementos de cadena para la matriz con el valor predeterminado:
<string name="search_adv_prompt">Scegli un metatag</string> <!-- Default value-->
<string name="search_adv_title">Titolo</string>
<string name="search_adv_desc">Descrizione</string>
<string name="search_adv_autore">Autore</string>
...
Y aquí el código para evitar el evento disparado en onCrea teMethod y el entorno para permitir seleccionar el mismo elemento ya seleccionado:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.search_adv_main);
spinner = (Spinner) findViewById(R.id.spinner_metatag);
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view, int pos,long id) {
//prevent onCreate event fire and the loop
if(pos==0)
return;
//HERE YOUR CODE
//at the end move to the default element the spinner
spinner.setSelection(0);
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {}
});
}
Hope helps. La idea proviene de la segunda solución de TreKing's answer
Desearía poder votar esta pregunta 1000 veces. Y desearía que hubiera una respuesta decente. He estado buscando durante horas para tratar de evitar esta estúpida limitación. – aaronsnoswell
http://stackoverflow.com/a/11323043/2798289 – Govind