有人可以解释一下我做错了什么/我必须做什么?
我有一个从 json 数组获取信息的列表视图。但它是一个自定义列表视图,每行有 5 个图像和一些文本。每个图像都有一个 /drawable/image_selector 根据启用/禁用的不同图像。我可以使用 hashmap 和 ListAdapter 为每一行动态设置文本。但我试图对图像做同样的事情,但我做不到。使用自定义适配器是正确的选择吗?如果是这样怎么办?我还没有从示例中了解如何使用它们。
谢谢
这是给定活动的代码: public class DisponiveisActivity extends ListActivity { ; //para os icones 做布局
private ProgressDialog pDialog;
//Object of class JSON Parser
JSONParser jsonParser = new JSONParser();
ArrayList<HashMap<String, String>> disponiveislist;
public void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    setContentView(R.layout.list);
    disponiveislist = new ArrayList<HashMap<String, String>>();
    new Loaddisp().execute();
}
//Background ASYNC task to load
class Loaddisp extends AsyncTask<String, String, String>{
    @Override
    protected void onPreExecute() {
        super.onPreExecute();
        pDialog = new ProgressDialog(DisponiveisActivity.this);
        pDialog.setMessage("Carregando");
        pDialog.setIndeterminate(false);
        pDialog.setCancelable(false);
        pDialog.show();
    }
    protected String doInBackground(String... args) {
                String nome = l.getString("NOME");
                String preco = l.getString("PRECO");
                String cfotografia = l.getString("COMFOTOGRAFIA");
                String cdados = l.getString("COMDADOS");
                String copiniao = l.getString("COMOPINIAO");
                String cdeslocacao = l.getString("COMDESLOCACAO");
                String distancia = l.getString("DISTANCIA");
                //create new HASHMAP                    
                HashMap<String,String> map = new HashMap<String,String>();
                map.put("NOME", nome);  
                map.put("PRECO", preco);
                map.put("DISTANCIA", distancia);
                map.put("COMOPINIAO", copiniao);
                map.put("COMDADOS", cdados);
                map.put("COMFOTOGRAFIA", cfotografia);
                //------------------------------
                disponiveislist.add(map);
            }
    @Override
    protected void onPostExecute(String file_url) {
        // TODO Auto-generated method stub
        pDialog.dismiss();
        runOnUiThread(new Runnable() {
            public void run() {
                /**
                 * Updating parsed JSON data into ListView
                 * */
                    Log.d("PP",disponiveislist.toString());
                ListAdapter adapter = new SimpleAdapter(DisponiveisActivity.this, disponiveislist, R.layout.listrow,new String[]{"NOME","PRECO","DISTANCIA"}, new int[]{R.id.mission_name, R.id.preco, R.id.cdistancia});
                setListAdapter(adapter);
            }
        });
    }
    }
}