Android: Spinner em runtime
Veja como trabalhar com Spinner do Android, vou mostrar como atribuir uma lista de string ao spinner e como setar o valor default para ele.
XML:
1 | <Spinner android:layout_height="wrap_content" android:layout_width="match_parent" android:id="@+id/spEstado"></Spinner> |
ACTIVITY:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | package lethus.social.droid; import android.app.Activity; import android.os.Bundle; import android.widget.*; import android.view.View; import android.view.View.OnClickListener; public class AddFamiliaActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.add_familia); ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, Tools.getEstados()); // aqui criamos um array adapter que irá popular o spinner o Tools.getEstados() eu explico logo abaixo que eh a variavel de strings que vai ser populada no spinner Spinner spEstado = (Spinner)findViewById(R.id.spEstado); //localizo o spinner na view spEstado.setAdapter(adapter); // associo o adapter spEstado.setSelection(18); // aqui você pode sertar um valor padrão para o spinner } } |
Fiz uma classe para retornar todos os estados brasileiros se quiser aproveitar pode usá-la:
CLASSE TOOLS:
1 2 3 4 5 6 7 8 9 10 11 | package lethus.social.droid; public class Tools { public static String[] getEstados(){ String[] arr = new String[] { "AC", "AL", "AP", "AM", "BA", "CE", "DF", "ES", "GO", "MA", "MT", "MS", "MG", "PA", "PB", "PR", "PE", "PI", "RJ", "RN", "RS", "RO", "RR", "SC", "SP", "SE", "TO" }; return arr; } } |