首页 > 代码库 > listView加载在Dialog里面

listView加载在Dialog里面

        LinearLayout linearLayoutMain = new LinearLayout(this);// 自定义一个布局文件
        linearLayoutMain.setLayoutParams(new LayoutParams(
                LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
        ListView listView = new ListView(this);
        listView.setFadingEdgeLength(0);
        List<Map<String, String>> nameList = new ArrayList<Map<String, String>>();
        listCar = getUserCarList();
        for (int m = 0; m < listCar.size(); m++) {// initData为一个list类型的数据源
            Map<String, String> nameMap = new HashMap<String, String>();
            nameMap.put("name", listCar.get(m).getName().toString());
            nameList.add(nameMap);
        }
        SimpleAdapter adapter = new SimpleAdapter(mContext, nameList,
                R.layout.car_list, new String[] { "name" },
                new int[] { R.id.title });
        listView.setAdapter(adapter);
        linearLayoutMain.addView(listView);
        final AlertDialog dialog = new AlertDialog.Builder(this)
                .setTitle("我的爱车").setView(linearLayoutMain)
                // 在这里把写好的这个listview的布局加载dialog中
                .setNegativeButton("取消", new DialogInterface.OnClickListener() {

                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        // TODO Auto-generated method stub
                        dialog.cancel();
                    }
                })
                .setNeutralButton("添加爱车",
                        new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog,
                                    int which) {
                                // TODO Auto-generated method stub
                                startActivity(new Intent(
                                        VehicleAllActivity.this,
                                        CarChooseActivity.class));
                                dialog.cancel();
                            }
                        }).create();
        dialog.show();