Changing content of a Spinner via a radiobutton

Asked

Viewed 331 times

0

I used this code to change the contents of a Spinner with a radiobutton but it doesn’t work. I ask for your help:

public class ExemploActivity extends Activity {
    ImageView image;
    EditText nome,codigo;
    Spinner sexo, curso;
    RadioButton tecnologias, letras;
    RadioGroup r1;
    private static final String[] sex = {"","Masculino","Feminino"};
    private static final String[] AFCT = {"","Energias Renovaveis","TIC's"};
    private static final String[] AFAG = {"","Direito","Recursos Humanos"};
    ArrayAdapter<String> operation,genero,tecs,Camera;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.exemplo);

        if(tecnologias.isSelected()){
            operation = new ArrayAdapter<String>(ExemploActivity.this,android.R.layout.simple_spinner_item,AFCT);

        }else if (letras.isSelected()){
            operation = new ArrayAdapter<String>(ExemploActivity.this,android.R.layout.simple_spinner_item,AFAG);

        }

        curso.setAdapter(tecs);

        genero = new    ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,sex);
        nome = (EditText)findViewById(R.id.editText1);
        codigo = (EditText)findViewById(R.id.editText2);

        sexo=( Spinner)findViewById(R.id.spinner1);
        sexo.setAdapter(genero);

        tecnologias=(RadioButton)findViewById(R.id.radio1);
        letras=(RadioButton)findViewById(R.id.radio2);

        image = (ImageView)findViewById(R.id.imageView1);
        Camera = new    ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,sex);
        /*image.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
                startActivityForResult(intent, 0);
            }
        });*/

        image.setOnLongClickListener(new OnLongClickListener() {    
            @Override
            public boolean onLongClick(View v) {
                Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
                startActivityForResult(intent, 0);
                return true;
            }
        });

        curso=( Spinner)findViewById(R.id.spinner2);
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if(requestCode==0){
            Bitmap theImage = (Bitmap)data.getExtras().get("data");
            image.setImageBitmap(theImage);
        }
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.exemplo, menu);
        return true;
    }
}
  • 1

    Inform the problem that is occurring, and details of the error that is giving, the error stack. So that we can help you.

1 answer

1

You must be getting a certain Nullpointerexeception ?

you’re just associating the attribute "technologies":

tecnologias = (RadioButton) findViewById(R.id.radio1);
    letras = (RadioButton) findViewById(R.id.radio2);

    tecnologias.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            operation = new ArrayAdapter<String>(ExemploActivity.this, android.R.layout.simple_spinner_item, AFCT);
            operation.notifyDataSetChanged();
        }
    });

You have to add listeners to know when your Radiobuttons are triggered by the user. It is based on this and the one studied that you can...

Att

Browser other questions tagged

You are not signed in. Login or sign up in order to post.