Spinner e Set Checkbox
Iniciado por
jtbtnt
, Oct 23 2010 12:36
5 respostas a este tópico
#1
Mensagem publicada 23 October 2010 - 12:36
Precisava de ajuda para um programa que estou a fazer.Já tenho o meu spinner direitinho com as opcções todas.Mas gostava de saber como é que eu faço para quando clico numa das opcções o programa selecciona determinada checkbox?[code type=javascript]public class testeversao extends Activity { /** Called when the activity is first created. */ CheckBox toma,dia,horas12,horas8,horas6; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Spinner s = (Spinner) findViewById(R.id.medicamento); ArrayAdapter adapter = ArrayAdapter.createFromResource( this, R.array.medicamentos, android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); s.setAdapter(adapter); } private void setWidgetReferences (){ toma = (CheckBox) findViewById(R.id.toma); dia = (CheckBox) findViewById(R.id.dia); horas12 = (CheckBox) findViewById(R.id.horas12); horas8 = (CheckBox) findViewById(R.id.horas8); horas6 = (CheckBox) findViewById(R.id.horas6); } public void onClick(DialogInterface dialog, int which) { AdapterView medicamento = null; switch(medicamento.getSelectedItemPosition()) { case 0: //acção aqui??? ; break; case 1: //acção aqui??? ; break; case 2: //acção aqui??? ; break; } } }[/code]Aqui está o que já tenho
#2
Mensagem publicada 23 October 2010 - 12:44
Por exemplo:horas12.setChecked(true);
#3
Mensagem publicada 23 October 2010 - 13:23
Eu por exemplo modifique esta parte assim:public void onClick(DialogInterface dialog, int which) { AdapterView medicamento = null; switch(medicamento.getSelectedItemPosition()) { case 0: horas12.setChecked(true); ; breakmas continuou sem dar. Não tou a conseguir ver o que me falta!
#4
Mensagem publicada 23 October 2010 - 14:03
e nao te dá um FC nem nada? é que assignares null à variavel e logo a seguir usa-la não dá nada como é obvio...
#5
Mensagem publicada 23 October 2010 - 16:06
Fiz algumas alterações[code type=javascript]public class testeversao extends Activity { /** Called when the activity is first created. */ CheckBox toma, dia, horas12, horas8, horas6; Spinner medic; private static final String[] medicamentos = {"Outro","Paracetamol","med1"}; ArrayAdapter emedicamentos; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); toma = (CheckBox) findViewById(R.id.toma); dia = (CheckBox) findViewById(R.id.dia); horas12 = (CheckBox) findViewById(R.id.horas12); horas8 = (CheckBox) findViewById(R.id.horas8); horas6 = (CheckBox) findViewById(R.id.horas6); emedicamentos = new ArrayAdapter(this, android.R.layout.simple_spinner_item, medicamentos); emedicamentos.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); medic = (Spinner) findViewById(R.id.medicamento); medic.setAdapter(emedicamentos); } public void onClick(DialogInterface dialog, int which) { switch (medic.getSelectedItemPosition()) { case 0: ; break; case 1: dia.setChecked(true); break; case 2: ; break; } }[/code]Mas na parte que interessa só tirei aquilo que me disses-te:[code type=javascript]public void onClick(DialogInterface dialog, int which) { switch (medic.getSelectedItemPosition()) { case 0: ; break; case 1: dia.setChecked(true); break; case 2: ; break; }[/code]Continua a não dar! :blink: Mas eu não sei se o prob tá no spinner ou na checkbox
#6
Mensagem publicada 23 October 2010 - 23:29
Falta-te atribuir o onClickListener a alguém. Tens aí o onClick escrito mas por si só nao te faz nada.