private void setListviewDialog() {
//自定義一個佈局文件
LinearLayout linearLayoutMain = new LinearLayout(this);
linearLayoutMain.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
//自定義一個listview
ListView listView = new ListView(this);
listView.setFadingEdgeLength(0);
//建立一個數組存儲listview上顯示的數據
List<Map<String, String>> nameList = new ArrayList<Map<String, String>>();
for (int m = 0; m < mDatas.size(); m++) {//initData爲一個list類型的數據源
Map<String, String> nameMap = new HashMap<String, String>();
nameMap.put("name", mDatas.get(m).toString());
nameList.add(nameMap);
}
SimpleAdapter adapter = new SimpleAdapter(this, nameList, R.layout.item_consume_cost_apply_textview,
new String[] { "name" }, null);
listView.setAdapter(adapter);
linearLayoutMain.addView(listView);//往這個佈局中加入listview
final AlertDialog dialog = new AlertDialog.Builder(this).setTitle("選擇患者姓名").setView(linearLayoutMain)//在這裏把寫好的這個listview的佈局加載dialog中
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
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<?> parent, View view, int position, long id) {
// TODO Auto-generated method stub
// TextView tv = (TextView) parent.findViewById(R.id.tv_uploadphoto_select_name_item);//取得每條item中的textview控件
// et_name.setText(tv.getText().toString());
dialog.cancel();
}
});
}
androd中顯示listview的dialog,並實現listview的點擊事件
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.