Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将notifyDataSetChanged与BaseAdapter一起使用_Java_Android_Baseadapter - Fatal编程技术网

Java 将notifyDataSetChanged与BaseAdapter一起使用

Java 将notifyDataSetChanged与BaseAdapter一起使用,java,android,baseadapter,Java,Android,Baseadapter,当第一个微调器更改时,我正在尝试更改第二个微调器。这就是我尝试过的 spinnerBid = findViewById(R.id.profile_spinner_bid); spinnerBid.setAdapter(null); unitBAdapter = new UnitBAdapter(ProfileActivity.this, getUnitBs(aId)); spinnerBid.setAdapter(unitBAdapter); int positi

当第一个微调器更改时,我正在尝试更改第二个微调器。这就是我尝试过的

spinnerBid = findViewById(R.id.profile_spinner_bid);
    spinnerBid.setAdapter(null);
    unitBAdapter = new UnitBAdapter(ProfileActivity.this, getUnitBs(aId));
    spinnerBid.setAdapter(unitBAdapter);
    int positionB = -1;
    for (int i = 0; i < getUnitBs(aId).size(); i++) {
        if (getUnitBs(aId).get(i).getBId() == bId) {
            positionB = i;
        }
    }
    spinnerBid.setSelection(positionB);
    unitBAdapter.notifyDataSetChanged(); 
spinnerBid=findviewbyd(R.id.profile\u spinner\u bid);
spinnerBid.setAdapter(空);
unitBAdapter=newUnitBadapter(ProfileActivity.this,getUnitBs(aId));
喷丝头固定接头(unitBAdapter);
int位置b=-1;
对于(int i=0;i
您可以根据需要在onCreate()中执行以下代码

        spinner1 = findViewById(R.id.spinner1);
        spinner2 = findViewById(R.id.spinner2);

        String[] s1 = {"abc", "def", "ghi", "jkl"};
        String[] s2 = {"mno", "pqr", "stu", "vwx"};

        ArrayAdapter<String> adapter1 =new  ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, s1);
        ArrayAdapter<String> adapter2 =new  ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, s2);

        spinner1.setAdapter(adapter1);
        spinner2.setAdapter(adapter2);

        spinner1.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
                //here you can write your code for your requirements like,
                // if in spinner1 position 1 is selected then in spinner2 set position to 1 or anything you want
                if(position==0){
                    spinner2.setSelection(0);
                }
            }

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

            }
        });
spinner1=findviewbyd(R.id.spinner1);
喷丝头2=findViewById(R.id.喷丝头2);
字符串[]s1={“abc”、“def”、“ghi”、“jkl”};
字符串[]s2={“mno”、“pqr”、“stu”、“vwx”};
ArrayAdapter adapter1=新的ArrayAdapter(这是android.R.layout.simple_list_item_1,s1);
ArrayAdapter adapter2=新的ArrayAdapter(这是android.R.layout.simple_list_item_1,s2);
喷丝头1.设置适配器(适配器1);
喷丝头2.设置适配器(适配器2);
spinner1.setOnItemSelectedListener(新AdapterView.OnItemSelectedListener()){
@凌驾
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id){
//在这里,您可以根据自己的需求编写代码,例如,
//如果选择了在喷丝头1位置1,则在喷丝头2将位置设置为1或任何您想要的位置
如果(位置==0){
喷丝头2.5(0);
}
}
@凌驾
未选择公共无效(AdapterView父级){
}
});

希望这对您有所帮助。

您希望在选择第一个适配器的任意项时更改第二个适配器的元素。正当还是别的什么?