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