Android 在微调器中选择项目后更新内容

Android 在微调器中选择项目后更新内容,android,Android,又是我。我在最后几个小时尝试了如何更改微调器的内容。 好的,让我们从头开始 我有三个纺纱机。它们都有初始值。第一个纺纱器是主纺纱器,其他两个纺纱器取决于第一个纺纱器中选择的阀门。因此,在微调器1中进行选择后,我想更新最后两个微调器*编辑:所有微调器都位于同一活动上 我怎样才能做到这一点?我的问题是,我只能在spinners和SelectAdapter中进行更改,但这是一个全新的类。我无法达到其他微调器所在的活动 thx您的纺纱工从事不同的活动吗 如果是,则只需通过(请参阅putExtra部分)传

又是我。我在最后几个小时尝试了如何更改微调器的内容。 好的,让我们从头开始

我有三个纺纱机。它们都有初始值。第一个纺纱器是主纺纱器,其他两个纺纱器取决于第一个纺纱器中选择的阀门。因此,在微调器1中进行选择后,我想更新最后两个微调器*编辑:所有微调器都位于同一活动上

我怎样才能做到这一点?我的问题是,我只能在spinners和SelectAdapter中进行更改,但这是一个全新的类。我无法达到其他微调器所在的活动


thx

您的纺纱工从事不同的活动吗

如果是,则只需通过(请参阅putExtra部分)传递第一个微调器的选定值,并从下一个活动中检索该值,以便可以相应地设置下一个微调器

编辑:

以下是更改第二和第三微调器中选定项目的示例。用您的逻辑更新侦听器(onItemSelected方法)

活动:

private Spinner s;
private Spinner s2;
private Spinner s3;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.main);
    String[] myList = new String[] { "Hello", "World", "Foo", "Bar" };
    String[] myList2 = new String[] { "Hello2", "World2", "Foo2", "Bar2" };
    String[] myList3 = new String[] { "Hello3", "World3", "Foo3", "Bar3" };

    s = (Spinner) findViewById(R.id.spinner1);
    s2 = (Spinner) findViewById(R.id.spinner2);
    s3 = (Spinner) findViewById(R.id.spinner3);

    s.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, myList));
    s2.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, myList2));
    s3.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, myList3));


    s.setOnItemSelectedListener(new OnItemSelectedListener(){

        @Override
        public void onItemSelected(AdapterView<?> parent, View v,
                int pos, long id) {
            s2.setSelection(pos);
            s3.setSelection(pos);
        }

        @Override
        public void onNothingSelected(AdapterView<?> arg0) {


        }});
}
专用微调器s;
私人纺纱机s2;
私人纺纱机s3;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
String[]myList=新字符串[]{“Hello”、“World”、“Foo”、“Bar”};
字符串[]myList2=新字符串[]{“Hello2”、“World2”、“Foo2”、“Bar2”};
字符串[]myList3=新字符串[]{“Hello3”、“World3”、“Foo3”、“Bar3”};
s=(喷丝器)findViewById(R.id.spinner1);
s2=(喷丝器)findViewById(R.id.喷丝器2);
s3=(喷丝器)findViewById(R.id.spinner3);
s、 setAdapter(新的ArrayAdapter(这个,android.R.layout.simple_spinner_项,myList));
s2.setAdapter(新的ArrayAdapter(这个,android.R.layout.simple_spinner_项,myList2));
s3.setAdapter(新的ArrayAdapter(这个,android.R.layout.simple_spinner_项,myList3));
s、 setOnItemSelectedListener(新的OnItemSelectedListener(){
@凌驾
已选择公共视图(AdapterView父视图、视图v、,
内部位置,长id){
s2.选举(pos);
s3.选举(pos);
}
@凌驾
未选择公共无效(AdapterView arg0){
}});
}
main.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:layout_width="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android"
         android:layout_height="wrap_content"
        android:orientation="vertical">
<Spinner android:id="@+id/spinner1" android:layout_height="wrap_content" android:layout_width="fill_parent" />
<Spinner android:id="@+id/spinner2" android:layout_height="wrap_content" android:layout_width="fill_parent" />
<Spinner android:id="@+id/spinner3" android:layout_height="wrap_content" android:layout_width="fill_parent" />
</LinearLayout>


hi ccheneson,不,它们都是同一个活动。那么“我的问题是,我只能在Spinner和MSelectAdapter中进行更改,但这是一个全新的类。我无法达到其他Spinner所在的活动。”?sry buddy,我太愚蠢了。你的榜样很有魅力。非常感谢。