如何更改微调器的数组源(eclipse中的Android)

如何更改微调器的数组源(eclipse中的Android),android,arrays,eclipse,android-spinner,Android,Arrays,Eclipse,Android Spinner,我以前试过问这个问题,但我想我没有正确地解释我自己,所以我会再试一次。我有一个微调器(微调器5),我创建了两个字符串数组(name_array和type_array),它们位于values文件夹中 我还有两个单选按钮(radiobtn1和radiobtn2)。当选择每个单选按钮时,我想基本上改变喷丝头5的来源 希望有人能帮忙。谢谢 很简单,伙计。。。在onCheckedChanged侦听器中更改适配器的值,并调用notifyDataSourceChange 如果不清楚。。。您还可以在google

我以前试过问这个问题,但我想我没有正确地解释我自己,所以我会再试一次。我有一个微调器(微调器5),我创建了两个字符串数组(name_array和type_array),它们位于values文件夹中

我还有两个单选按钮(radiobtn1和radiobtn2)。当选择每个单选按钮时,我想基本上改变喷丝头5的来源

希望有人能帮忙。谢谢


很简单,伙计。。。在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下拉菜单\u‌​em); 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下拉菜单\u‌​em); 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_it‌​em);

    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