ListView 和Button的结合



 

public class Main extends Activity {
	ListView list;

	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		list = (ListView) findViewById(R.id.lv);
		
		MyAdapter adapter = new MyAdapter(this);
		list.setAdapter(adapter);
		list.setItemsCanFocus(false);
		list.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
		list.setOnItemClickListener(new OnItemClickListener() {
			public void onItemClick(AdapterView<?> parent, View view,
					int position, long id) {
				ViewHolder holder = (ViewHolder) view.getTag();
				String string = holder.file_name.getText().toString();
				holder.download_btn.setOnClickListener(new OnClickListener() {
					public void onClick(View v) {
						Toast.makeText(Main.this, "123", 2000).show();
					}
				});
				Toast.makeText(Main.this, string, 2000).show();
			}
		});
	}
}

 

public class MyAdapter extends BaseAdapter {
	private LayoutInflater mInflater;
	private List<Map<String, Object>> mData;

	public MyAdapter(Context context) {
		mInflater = LayoutInflater.from(context);
		init();
	} // 初始化

	private void init() {
		mData = new ArrayList<Map<String, Object>>();

		Map<String, Object> map = new HashMap<String, Object>();
		map.put("file_name", "附件一");
		map.put("file_time", "2011/07/09");
		mData.add(map);

		map = new HashMap<String, Object>();
		map.put("file_name", "附件二");
		map.put("file_time", "2011/07/09");
		mData.add(map);

	}

	@Override
	public int getCount() {
		return mData.size();
	}

	@Override
	public Object getItem(int position) {
		return null;
	}

	@Override
	public long getItemId(int position) {
		return 0;
	}

	@Override
	public View getView(int position, View convertView, ViewGroup parent) {
		ViewHolder holder = null;
		// convertView为null的时候初始化convertView。
		if (convertView == null) {
			holder = new ViewHolder();
			convertView = mInflater.inflate(R.layout.list, null);
			holder.file_name = (TextView) convertView
					.findViewById(R.id.file_name);
			holder.file_time = (TextView) convertView
					.findViewById(R.id.file_time);
			holder.download_btn = (Button) convertView
					.findViewById(R.id.download_btn);
			holder.download_btn.setFocusable(false);

			convertView.setTag(holder);
		} else {
			holder = (ViewHolder) convertView.getTag();
		}
		holder.file_name.setText(mData.get(position).get("file_name").toString());
		holder.file_time.setText(mData.get(position).get("file_time").toString());
		final String string = mData.get(position).get("file_name").toString();
		holder.download_btn.setOnClickListener(new OnClickListener() {
			public void onClick(View v) {
				System.out.println(string);
			}
		});
		return convertView;
	}

	public final class ViewHolder {
		public TextView file_name;
		public TextView file_time;
		public Button download_btn;
	}
}

 
 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值