如何更改微调器的数组源(eclipse中的Android)
我以前试过问这个问题,但我想我没有正确地解释我自己,所以我会再试一次。我有一个微调器(微调器5),我创建了两个字符串数组(name_array和type_array),它们位于values文件夹中 我还有两个单选按钮(radiobtn1和radiobtn2)。当选择每个单选按钮时,我想基本上改变喷丝头5的来源 希望有人能帮忙。谢谢如何更改微调器的数组源(eclipse中的Android),android,arrays,eclipse,android-spinner,Android,Arrays,Eclipse,Android Spinner,我以前试过问这个问题,但我想我没有正确地解释我自己,所以我会再试一次。我有一个微调器(微调器5),我创建了两个字符串数组(name_array和type_array),它们位于values文件夹中 我还有两个单选按钮(radiobtn1和radiobtn2)。当选择每个单选按钮时,我想基本上改变喷丝头5的来源 希望有人能帮忙。谢谢 很简单,伙计。。。在onCheckedChanged侦听器中更改适配器的值,并调用notifyDataSourceChange 如果不清楚。。。您还可以在google
很简单,伙计。。。在onCheckedChanged侦听器中更改适配器的值,并调用notifyDataSourceChange 如果不清楚。。。您还可以在google上搜索--如何动态更改微调器的值
<RadioGroup
android:layout_toRightOf="@+id/txtpref"
android:layout_marginLeft="10sp"
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<RadioButton
android:textColor="#000000"
android:text="Male"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radiobutton1"/>
<RadioButton
android:textColor="#000000"
android:text="Female"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radiobutton2"/>
</RadioGroup>
In Your Java file
RadioButton radiobutton1,radiobutton2;
String [] name_array,type_array;
ArrayAdapter<String> ArrayAdapter;
RadioGroup radioGroup=(RadioGroup)findViewById(R.id.RadioGroup);
if(R.id.radioButton1==group.getCheckedRadioButtonId()){
ArrayAdapter=new ArrayAdapter<String>(getCurrentContext(), android.R.layout.simple_spinner_item, name_array);
NameSpinner.setAdapter(ArrayAdapter);
ArrayAdapter.notifyDataSetChanged()
}else{
ArrayAdapter=new ArrayAdapter<String>(getCurrentContext(), android.R.layout.simple_spinner_item, name_array);
NameSpinner.setAdapter(ArrayAdapter);
ArrayAdapter.notifyDataSetChanged()
}
在Java文件中
RadioButton radiobutton1,radiobutton2;
字符串[]名称\数组,类型\数组;
ArrayAdapter ArrayAdapter;
放射组放射组=(放射组)findViewById(R.id.RadioGroup);
if(R.id.radioButton1==group.getCheckedRadioButtonId()){
ArrayAdapter=新的ArrayAdapter(getCurrentContext(),android.R.layout.simple\u微调器\u项,名称\u数组);
NameSpinner.setAdapter(ArrayAdapter);
ArrayAdapter.notifyDataSetChanged()
}否则{
ArrayAdapter=新的ArrayAdapter(getCurrentContext(),android.R.layout.simple\u微调器\u项,名称\u数组);
NameSpinner.setAdapter(ArrayAdapter);
ArrayAdapter.notifyDataSetChanged()
}
很简单,伙计。。。在onCheckedChanged侦听器中更改适配器的值,并调用notifyDataSourceChange 如果不清楚。。。您还可以在google上搜索--如何动态更改微调器的值
<RadioGroup
android:layout_toRightOf="@+id/txtpref"
android:layout_marginLeft="10sp"
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<RadioButton
android:textColor="#000000"
android:text="Male"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radiobutton1"/>
<RadioButton
android:textColor="#000000"
android:text="Female"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radiobutton2"/>
</RadioGroup>
In Your Java file
RadioButton radiobutton1,radiobutton2;
String [] name_array,type_array;
ArrayAdapter<String> ArrayAdapter;
RadioGroup radioGroup=(RadioGroup)findViewById(R.id.RadioGroup);
if(R.id.radioButton1==group.getCheckedRadioButtonId()){
ArrayAdapter=new ArrayAdapter<String>(getCurrentContext(), android.R.layout.simple_spinner_item, name_array);
NameSpinner.setAdapter(ArrayAdapter);
ArrayAdapter.notifyDataSetChanged()
}else{
ArrayAdapter=new ArrayAdapter<String>(getCurrentContext(), android.R.layout.simple_spinner_item, name_array);
NameSpinner.setAdapter(ArrayAdapter);
ArrayAdapter.notifyDataSetChanged()
}
在Java文件中
RadioButton radiobutton1,radiobutton2;
字符串[]名称\数组,类型\数组;
ArrayAdapter ArrayAdapter;
放射组放射组=(放射组)findViewById(R.id.RadioGroup);
if(R.id.radioButton1==group.getCheckedRadioButtonId()){
ArrayAdapter=新的ArrayAdapter(getCurrentContext(),android.R.layout.simple\u微调器\u项,名称\u数组);
NameSpinner.setAdapter(ArrayAdapter);
ArrayAdapter.notifyDataSetChanged()
}否则{
ArrayAdapter=新的ArrayAdapter(getCurrentContext(),android.R.layout.simple\u微调器\u项,名称\u数组);
NameSpinner.setAdapter(ArrayAdapter);
ArrayAdapter.notifyDataSetChanged()
}
设置ArrayAdapter而不是在xml中设置它。。。然后继续更新适配器
类似于设置ArrayAdapter而不是在xml中设置它。。。然后继续更新适配器 类似于
用xml编写下面的代码
在Java文件中
RadioButton radiobutton1,radiobutton2;
字符串[]名称\数组,类型\数组;
字符串[]临时数组;
temparray=(name_array或type_array)//首先使用任何要解除播放的,然后使用temparray传递适配器
ArrayAdapter ArrayAdapter=新的ArrayAdapter(Activity_Name.this,android.R.layout.simple_spinner_item,temparray);
arrayAdapter.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\uem);
radiobutton1=(RadioButton)findViewById(R.id.radiobutton1);
radiobutton2=(RadioButton)findViewById(R.id.radiobutton2);
radiobutton1.setOnCheckedChangeListener(新的OnCheckedChangeListener(){
检查更改后的公共无效(复合按钮视图,布尔值已检查){
//TODO自动生成的方法存根
如果(已检查){
//您希望spinner5显示名称数组中的内容。
temparray=name_数组;
您的_适配器。notifyDataSetChanged();
}
}
});
radiobutton2.setOnCheckedChangeListener(新的OnCheckedChangeListener(){
检查更改后的公共无效(复合按钮视图,布尔值已检查){
//TODO自动生成的方法存根
如果(已检查){
//您希望spinner5显示类型_数组中的内容。
temparray=类型_数组;
您的_适配器。notifyDataSetChanged();
}
}
});
谢谢
用xml编写下面的代码
在Java文件中
RadioButton radiobutton1,radiobutton2;
字符串[]名称\数组,类型\数组;
字符串[]临时数组;
temparray=(name_array或type_array)//首先使用任何要解除播放的,然后使用temparray传递适配器
ArrayAdapter ArrayAdapter=新的ArrayAdapter(Activity_Name.this,android.R.layout.simple_spinner_item,temparray);
arrayAdapter.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\uem);
radiobutton1=(RadioButton)findViewById(R.id.radiobutton1);
radiobutton2=(RadioButton)findViewById(R.id.radiobutton2);
radiobutton1.setOnCheckedChangeListener(新的OnCheckedChangeListener(){
检查更改后的公共无效(复合按钮视图,布尔值已检查){
//TODO自动生成的方法存根
如果(已检查){
//您希望spinner5显示名称数组中的内容。
temparray=name_数组;
您的_适配器。notifyDataSetChanged();
}
}
});
radiobutton2.setOnCheckedChangeListener(新的OnCheckedChangeListener(){
检查更改后的公共无效(复合按钮视图,布尔值已检查){
//TODO自动生成的方法存根
如果(已检查){
//您希望spinner5显示类型_数组中的内容。
temparray=类型_数组;
您的_适配器。notifyDataSetChanged();
}
}
});
谢谢
仍然不确定如何将其应用于我的问题。你能帮忙吗?我不知道怎么办
Write below code in xml
<RadioGroup
android:layout_toRightOf="@+id/txtpref"
android:layout_marginLeft="10sp"
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<RadioButton
android:textColor="#000000"
android:text="Male"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radiobutton1"/>
<RadioButton
android:textColor="#000000"
android:text="Female"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radiobutton2"/>
</RadioGroup>
In Your Java file
RadioButton radiobutton1,radiobutton2;
String [] name_array,type_array;
String [] temparray;
temparray = (name_array or type_array) // use any which you want disaplay first and use temparray to pass your adapter
ArrayAdapter arrayAdapter =new ArrayAdapter<String>(Activity_Name.this,android.R.layout.simple_spinner_item, temparray);
arrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
radiobutton1 = (RadioButton) findViewById(R.id.radiobutton1);
radiobutton2 = (RadioButton) findViewById(R.id.radiobutton2);
radiobutton1.setOnCheckedChangeListener(new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
if (isChecked) {
// you want spinner5 to display contents from name_array.
temparray = name_array;
your_adapter.notifyDataSetChanged();
}
}
});
radiobutton2.setOnCheckedChangeListener(new OnCheckedChangeListener() {
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
if (isChecked) {
// you want spinner5 to display contents from type_array.
temparray = type_array;
your_adapter.notifyDataSetChanged();
}
}
});
Thanks