Young87

SmartCat's Blog

So happy to code my life!

游戏开发交流QQ群号60398951

当前位置:首页 >跨站数据测试

Android ListView嵌套checkbox点击事件

<CheckBox
        android:id="@+id/checkbox_view"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:clickable="false"
        android:focusable="false" />

adapter添加:

public static Map<Integer, Boolean> isSelected;
private boolean defulat = false;

// 初始化
private void init() {
	// 这儿定义isSelected这个map是记录每个listitem的状态,初始状态全部为false。
	isSelected = new HashMap<Integer, Boolean>();
	for (int i = 0; i < mvList.size(); i++) {
		isSelected.put(i, defulat);
	}
}

holderView.checkbox = (CheckBox) convertView.findViewById(R.id.checkbox_view);
holderView.checkbox.setChecked(isSelected.get(position));

public static Map<Integer, Boolean> getIsSelected() {
		return isSelected;
	}

public static void setIsSelected(Map<Integer, Boolean> isSelected) {
		MainAdapter.isSelected = isSelected;
	}


activity的List点击事件:

private HolderView hv;

listContent.setOnItemClickListener(new OnItemClickListener() {
	@Override
	public void onItemClick(AdapterView<?> arg0, View view, int position, long id) {
		hv = (HolderView) view.getTag();
		if (hv.checkbox.isChecked())
			hv.checkbox.setChecked(false);
		else
			hv.checkbox.setChecked(true);
		boolean check = hv.checkbox.isChecked();
		MainAdapter.isSelected.put(position, check);
		}
	});



除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog

上一篇: Teamviewer显示“未就绪,请检查您的连接”解决办法

下一篇: 浅谈工业级物联网项目架构设计及实施

精华推荐