在java中创建单击事件上的单选按钮以更改微调器数组

在java中创建单击事件上的单选按钮以更改微调器数组,java,android,Java,Android,我是Android编程的新手 我想要两个单选按钮,当点击它将改变微调器阵列 我知道这听起来很简单。我已经完成了所有的工作,但我不确定如何实现onclick更改来实现这一点。我已附上代码 我正经历着一段艰难的时光,试图弄清楚如何设置这个听众。而且,我没有错误,spinner可以工作,只是无法让它更改数组 非常感谢您的指导。 干杯 我试着和听众一起创作,但是没有用,任何建议都很感激 Xml 爪哇 @覆盖 创建时的公共void(Bundle savedInstanceState){ super.o

我是Android编程的新手

我想要两个单选按钮,当点击它将改变微调器阵列

我知道这听起来很简单。我已经完成了所有的工作,但我不确定如何实现onclick更改来实现这一点。我已附上代码

我正经历着一段艰难的时光,试图弄清楚如何设置这个听众。而且,我没有错误,spinner可以工作,只是无法让它更改数组

非常感谢您的指导。 干杯

我试着和听众一起创作,但是没有用,任何建议都很感激

Xml


爪哇

@覆盖
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.canprovselect);
放射组放射组=(放射组)findViewById(R.id.RadioGroup 1);
int checkedRadioButton=radioGroup.getCheckedRadioButtonId();
微调器微调器=(微调器)findViewById(R.id.Spinner);
ArrayAdapter适配器=空;
字符串radioButtonSelected=“”;
开关(选中RadioButton){
案例R.id.radiobutton3:radioButtonSelected=“radiobutton1”;
adapter=ArrayAdapter.createFromResource(
这个,R.array.prov\u数组,android.R.layout.simple\u微调器\u项);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
旋转器。设置适配器(适配器);
微调器。setOnItemSelectedListener(新的OnItemSelected(
));
打破
案例R.id.radiobutton4:radioButtonSelected=“radiobutton2”;
adapter=ArrayAdapter.createFromResource(
这个,R.array.prov1_数组,android.R.layout.simple_微调器_项);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
旋转器。设置适配器(适配器);
微调器。setOnItemSelectedListener(新的OnItemSelected(
));
打破
}
我对听众的尝试

public class CanProvselect extends Activity {

RadioButton myOption1, myOption2;

/** Called when the activity is first created. */

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.canprovselect);
    myOption1 = (RadioButton)findViewById(R.id.radio_1); 
    myOption2 = (RadioButton)findViewById(R.id.radio_2); 
    myOption1.setOnClickListener(myOptionOnClickListener); 
    myOption2.setOnClickListener(myOptionOnClickListener); 

    OnClickListener myOptionOnClickListener = null;

    Spinner spinner = (Spinner) findViewById(R.id.spinner);     
    ArrayAdapter<CharSequence> adapter = null;


}

RadioButton.OnClickListener myOptionOnClickListener = 
        new RadioButton.OnClickListener() 
{

    @Override 
public void onClick(View v) { 
        // TODO Auto-generated method stub 
        //switch (checkedRadioButton) {     
        myOption1 : radioButtonSelected = "radio_1";      
        adapter = ArrayAdapter.createFromResource(             
                this, R.array.prov_array, android.R.layout.simple_spinner_item);          
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);          
        spinner.setAdapter(adapter);     
        spinner.setOnItemSelectedListener(new OnItemSelected(             
                ));

        myOption2 : radioButtonSelected = "radio_2";     
        adapter = ArrayAdapter.createFromResource(                          
                this, R.array.prov1_array, android.R.layout.simple_spinner_item);          
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);          
        spinner.setAdapter(adapter);     
        spinner.setOnItemSelectedListener(new OnItemSelected(             
        )); 
    }
}
public类可以选择扩展活动{
单选按钮肌肽1,肌肽2;
/**在首次创建活动时调用*/
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.canprovselect);
myOption1=(单选按钮)findViewById(R.id.radio_1);
myOption2=(单选按钮)findViewById(R.id.radio_2);
myOption1.setOnClickListener(myOptionOnClickListener);
myOption2.setOnClickListener(myoptionnclickllistener);
OnClickListener myOptionOnClickListener=null;
微调器微调器=(微调器)findViewById(R.id.Spinner);
ArrayAdapter适配器=空;
}
RadioButton.OnClickListener myOptionOnClickListener=
新建RadioButton.OnClickListener()
{
@凌驾
公共void onClick(视图v){
//TODO自动生成的方法存根
//开关(选中RadioButton){
myOption1:radioButtonSelected=“radio_1”;
adapter=ArrayAdapter.createFromResource(
这个,R.array.prov\u数组,android.R.layout.simple\u微调器\u项);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
旋转器。设置适配器(适配器);
微调器。setOnItemSelectedListener(新的OnItemSelected(
));
myOption2:radioButtonSelected=“radio_2”;
adapter=ArrayAdapter.createFromResource(
这个,R.array.prov1_数组,android.R.layout.simple_微调器_项);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
旋转器。设置适配器(适配器);
微调器。setOnItemSelectedListener(新的OnItemSelected(
)); 
}
}

}您需要设置radioGroup.setOnClickListener(您的ListenerClass)。下面是一个示例


因为有一个带有Toast消息的onClick方法,用listview填充代码替换它。

在XML文件中,将
radiogroup
id
更改为
radiogroup 1

谢谢@ThinkStiple,我和这个侦听器相处得很艰难。我已经尝试过编写类似于您给我看的示例的代码了……它没有eem right能有人看一下吗..我已经在我的原始问题中添加了代码。请提供更多详细信息,如果可能的话,请提供堆栈跟踪。我在show cat中找不到任何错误,eclipse将不会运行。it.Description资源路径位置类型语法错误,insert“要完成FieldDeclaration CanProvselect.java/Credits/src/Credits第61行java问题导入android.widget.RadioGroup从未使用Credits.java/Credits/src/Credits第8行java问题您似乎缺少关闭声明的符号。不必担心导入从未使用。编码的结构看起来正确吗?我补充道d;在所需的位置(我不知道如何忽略它),现在我得到了大量错误…有人知道一个类似于我所需要的示例,单选按钮更改微调器数组吗?我可以看到按此方式构建的单击侦听器的结构吗?。
    @Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.canprovselect);


    RadioGroup radioGroup = (RadioGroup) findViewById(R.id.radiogroup1);

    int checkedRadioButton = radioGroup.getCheckedRadioButtonId();

    Spinner spinner = (Spinner) findViewById(R.id.spinner);     
    ArrayAdapter<CharSequence> adapter = null;

    String radioButtonSelected = "";
    switch (checkedRadioButton) {
    case R.id.radiobutton3 : radioButtonSelected = "radiobutton1";

    adapter = ArrayAdapter.createFromResource(
            this, R.array.prov_array, android.R.layout.simple_spinner_item);     
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);     
    spinner.setAdapter(adapter);
    spinner.setOnItemSelectedListener(new OnItemSelected(
            ));

    break;
    case R.id.radiobutton4 : radioButtonSelected = "radiobutton2";
    adapter = ArrayAdapter.createFromResource(             
            this, R.array.prov1_array, android.R.layout.simple_spinner_item);     
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);     
    spinner.setAdapter(adapter);
    spinner.setOnItemSelectedListener(new OnItemSelected(
            ));

    break;
    }
public class CanProvselect extends Activity {

RadioButton myOption1, myOption2;

/** Called when the activity is first created. */

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.canprovselect);
    myOption1 = (RadioButton)findViewById(R.id.radio_1); 
    myOption2 = (RadioButton)findViewById(R.id.radio_2); 
    myOption1.setOnClickListener(myOptionOnClickListener); 
    myOption2.setOnClickListener(myOptionOnClickListener); 

    OnClickListener myOptionOnClickListener = null;

    Spinner spinner = (Spinner) findViewById(R.id.spinner);     
    ArrayAdapter<CharSequence> adapter = null;


}

RadioButton.OnClickListener myOptionOnClickListener = 
        new RadioButton.OnClickListener() 
{

    @Override 
public void onClick(View v) { 
        // TODO Auto-generated method stub 
        //switch (checkedRadioButton) {     
        myOption1 : radioButtonSelected = "radio_1";      
        adapter = ArrayAdapter.createFromResource(             
                this, R.array.prov_array, android.R.layout.simple_spinner_item);          
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);          
        spinner.setAdapter(adapter);     
        spinner.setOnItemSelectedListener(new OnItemSelected(             
                ));

        myOption2 : radioButtonSelected = "radio_2";     
        adapter = ArrayAdapter.createFromResource(                          
                this, R.array.prov1_array, android.R.layout.simple_spinner_item);          
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);          
        spinner.setAdapter(adapter);     
        spinner.setOnItemSelectedListener(new OnItemSelected(             
        )); 
    }
}