GroupModel 无法转换为另一个模型

GroupModel cannot be cast to Another Model

我正在尝试将数据从 Web 服务提取到链接的微调器,但没有数据同时到两个微调器。而这段代码报错:

spinnerFleet.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
            FleetModel selectedItem = (FleetModel) adapterView.getSelectedItem(); /*I think there was an error in this part of the code */
            int vgID = displayIdData(selectedItem);
            String jsonString = "{\"params1\":\"" + session_id + "\"," +
                    "\"params2\":\"5\"," +
                    "\"params3\":\"0\"," +
                    "\"params4\":\"0\"," +
                    "\"params5\":\"0\"," +
                    "\"params6\":\""+vgID+"\"," +
                    "\"params7\":\"0\"," +
                    "\"params8\":\"" + user_id + "\"}";
            new LoadSpinnerGroupTask().execute(jsonString);
        }

显然,adapterView.getSelectedItem() returns GroupModel,而不是 FleetModel。因此,如果 FleetModel 不扩展 GroupModel,它将抛出转换错误。

您的适配器项中的数据类型是什么?将其更改为 FleetModel,或者只写 GroupModel selectedItem = (GroupModel) adapterView.getSelectedItem();

这样试试:

spinnerFleet.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
            FleetModel selectedItem = stateAdapter.getItem(i); /*I think there was an error in this part of the code */
            int vgID = displayIdData(selectedItem);
            String jsonString = "{\"params1\":\"" + session_id + "\"," +
                    "\"params2\":\"5\"," +
                    "\"params3\":\"0\"," +
                    "\"params4\":\"0\"," +
                    "\"params5\":\"0\"," +
                    "\"params6\":\""+vgID+"\"," +
                    "\"params7\":\"0\"," +
                    "\"params8\":\"" + user_id + "\"}";
            new LoadSpinnerGroupTask().execute(jsonString);
        }