0

好的,所以我对此很陌生,但我明白了。我刚遇到这个错误,我看到其他人也有同样的问题,但标准修复(干净)对我不起作用。我不知道如何解决这些错误!请帮忙!

第一个错误:

sp2.setOnItemSelectedListener(new OnItemSelectedListener() {我的 else if 语句中,我不断收到此错误:

new AdapterView.OnItemSelectedListener(){} 类型必须实现继承的抽象方法 AdapterView.OnItemSelectedListener.onNothingSelected(AdapterView)

我在那里有 onNothingSelected,它在我的 if 语句中有效,我的意思是我所做的只是复制、粘贴和编辑。

第二个错误:

});我的 else if 语句的末尾,我收到错误:

语法错误,插入“;” 完成声明

但一切都在那里。声明完成!

sp1.setOnItemSelectedListener(new OnItemSelectedListener() {

    public void onItemSelecteds(AdapterView<?> arg0, View arg1,
            int arg2, long arg3) {


             String reg_select = (sp1.getSelectedItem().toString());
                 if (reg_select.contentEquals("Southwest")){
                     sp2.setAdapter(sw_cit_adp); 
                     sp2.setOnItemSelectedListener(new OnItemSelectedListener() {

                            public void onItemSelected(AdapterView<?> arg0, View arg1,
                                    int arg2, long arg3) {
                                // TODO Auto-generated method stub

                             String sw_cit_select = (sp2.getSelectedItem().toString());
                             if (sw_cit_select.contentEquals("Lake Charles")){
                                 sp3.setAdapter(sw_lake_charles_adp); }

                             else if (sw_cit_select.contentEquals("Iowa")){
                                 sp3.setAdapter(sw_iowa_adp); }


                            ;}

                            public void onNothingSelected(AdapterView<?> arg0) {
                                // TODO Auto-generated method stub

                            };});}

                 else if (reg_select.contentEquals("South Central")){
                         sp2.setAdapter(sc_cit_adp); 
                         sp2.setOnItemSelectedListener(new OnItemSelectedListener() {

                                public void onItemSelected(AdapterView<?> arg0, View arg1,
                                        int arg2, long arg3) {
                                    // TODO Auto-generated method stub

                                 String sc_cit_select = (sp2.getSelectedItem().toString());
                                 if (sc_cit_select.contentEquals("Lafayette")){
                                     sp3.setAdapter(sc_lafayette_adp); }

                                 else if (sc_cit_select.contentEquals("Gueydan")){
                                     sp3.setAdapter(sc_gueydan_adp); }


                                ;}
                                public void onNothingSelected(
                                        AdapterView<?> arg0) {
                                    // TODO Auto-generated method stub

                                }



                                ;
                               });
                         }
4

1 回答 1

2

你有那个方法在错误的地方。你不能选择一个项目,也不能选择任何东西,这是没有意义的。

您需要将方法放在侦听器下,例如onItemSelected,但不是 inside onItemSelected

这是它应该(基本上)看起来的样子:

    spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
        @Override
        public void onNothingSelected(AdapterView<?> parent) {
        }

        @Override
        public void onItemSelected(AdapterView<?> parent, View view,
                int pos, long id) {
        // Your code to do something with the selected item
        }
    });

哦,你需要使用确切的方法名称......它onItemSelected 不是 onItemSelecteds

于 2012-08-05T15:56:58.967 回答