android dialog自定义listview,android 往dialog中加入listview,并实现listview中item的点击事件...

LinearLayout linearLayoutMain = new

LinearLayout(this);//自定义一个布局文件

linearLayoutMain.setLayoutParams(new

LayoutParams(

LayoutParams.MATCH_PARENT,

LayoutParams.WRAP_CONTENT));

ListView listView = new

ListView(this);//this为获取当前的上下文

listView.setFadingEdgeLength(0);

List> nameList = new

ArrayList>();//建立一个数组存储listview上显示的数据

for

(int m = 0; m < initData.size(); m++)

{//initData为一个list类型的数据源

Map nameMap = new

HashMap();

nameMap.put("name",

initData.get(m).get(TagItem.NAME).toString());

nameList.add(nameMap);

}

SimpleAdapter adapter = new

SimpleAdapter(UploadPhotoActivity.this,

nameList,

R.layout.item_uploadphoto_select_name,

new String[] { "name"

},

new int[] { R.id.tv_uploadphoto_select_name_item

});

listView.setAdapter(adapter);

linearLayoutMain.addView(listView);//往这个布局中加入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();

}

}).create();

dialog.setCanceledOnTouchOutside(false);//使除了dialog以外的地方不能被点击

dialog.show();

listView.setOnItemClickListener(new

OnItemClickListener() {//响应listview中的item的点击事件

@Override

public void onItemClick(AdapterView> arg0, View arg1,

int arg2,

long arg3) {

// TODO Auto-generated method

stub

TextView tv = (TextView)

arg1

.findViewById(R.id.tv_uploadphoto_select_name_item);//取得每条item中的textview控件

et_name.setText(tv.getText().toString());

dialog.cancel();

}

});

原文:http://www.cnblogs.com/linximeng/p/3746055.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值