对Listview中的自定义控件的事件监…
来源:互联网 发布:办公软件有几种 编辑:程序博客网 时间:2024/06/05 04:45
适配器端:
public class HistoryEditAdapter extendsSimpleAdapter{
private OnCheckedChangeListenermOnCheckedChangeListener;
private Map mIsSelected;
private List> mdata;
public HistoryEditAdapter(Context context,List> data, intresource, String[] from,int[] to,OnCheckedChangeListeneronCheckedChangeListener){
super(context, data, resource, from, to);
mOnCheckedChangeListener=onCheckedChangeListener;
mIsSelected = new HashMap();
mdata=data;
initHistoryMap();
}
public void selectAllhistorys() {
for (int i = 0; i
mIsSelected.put(i, true);
}
}
public void initHistoryMap() {
for (int i = 0; i < mdata.size(); i++) {
mIsSelected.put(i, false);
}
}
public View getView(final int position, View convertView,ViewGroup parent) {
View superView = super.getView(position, convertView,parent);
final CheckBox checkView = (CheckBox)superView.findViewById(R.id.history_edit_row_check);
checkView.setOnCheckedChangeListener(null);
checkView.setOnCheckedChangeListener(mOnCheckedChangeListener);
checkView.setTag(mdata.get(position).get("id"));
if (mIsSelected != null){
checkView.setChecked(mIsSelected.get(position));
}
checkView.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
if (checkView.isChecked()) {
mIsSelected.put(position, checkView.isChecked());
} else {
mIsSelected.put(position, checkView.isChecked());
}
}
});
return superView;
}
}
Activity 使用:
private OnCheckedChangeListenermHistoryDeleteChangeListener;
mHistoryDeleteChangeListener = new OnCheckedChangeListener(){
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
Boolean isExist = false;
long id = (Long)buttonView.getTag();
if (isChecked) {
if (mChecedList != null) {
for (int i = 0; i < mChecedList.size(); i++) {
if (mChecedList.get(i) == id) {
isExist = true;
}
}
}
if (!isExist) {
mChecedList.add(id);
}
} else if (mChecedList != null) {
for (int i = 0; i < mChecedList.size(); i++) {
if (mChecedList.get(i) == id) {
mChecedList.remove(i);
}
}
}
}
};
private void fillmHistoryDataHistory() {
String[] from = new String[]{Browser.BookmarkColumns.FAVICON,Browser.BookmarkColumns.TITLE,Browser.BookmarkColumns.URL};
int[] to = new int[] {R.id.history_edit_row_thumbnail,R.id.history_edit_row_title,R.id.history_edit_row_url};
mHistoryEditAdapter = newHistoryEditAdapter(this,mHistoryData,R.layout.history_edit_row,from, to,mHistoryDeleteChangeListener);
mListHistorys.setAdapter(mHistoryEditAdapter);
mHistoryEditAdapter.setViewBinder(new ViewBinder() {
}
0 0
- 对Listview中的自定义控件的事件监…
- 自定义服务器控件中的事件
- 控件的自定义事件
- 自定义控件的事件
- ListView应用------ListView控件显示List集合中的数据,并对Item响应选择事件(法一)
- ListView应用------ListView控件显示List集合中的数据,并对Item响应选择事件(法二)
- ListView里面的自定义控件
- 对Android自定义控件中的onMeasure方法的理解
- ListView中item点事件和item中的控件点击事件冲突的简易解决方法
- 屏蔽listview中的item点击事件,但不屏蔽item子控件的点击事件
- Android中的使用ListView控件显示List集合中的数据,并对Item响应选择事件(方法一)
- Android中的使用ListView控件显示List集合中的数据,并对Item响应选择事件(方法二)
- ------------------Android中对GridView, ListView等滚动控件的Touch事件onInterceptTouchEvent,onTouchEvent了解
- Android中对GridView, ListView等滚动控件的Touch事件onInterceptTouchEvent,onTouchEvent了解
- Android中对GridView, ListView等滚动控件的Touch事件onInterceptTouchEvent,onTouchEvent理解
- 给自定义控件中的子控件自定义点击事件
- 自定义控件的服务器端事件
- 控件的自定义事件2
- c++随机数产生
- 2011年05月02日的日记
- 第十一周项目六 回文、素数——判断是否为回文数
- 无法点击listView中的控件
- 在Android代码中动态添加视图
- 对Listview中的自定义控件的事件监…
- java中String,Date,long和Timestamp类型的转换
- C++类对象内存模型与成员函数调用分析(中)
- 菜鸟nginx源码剖析数据结构篇(八) 缓冲区链表ngx_chain_t
- 推荐看的一些博客
- C++类对象内存模型与成员函数调用分析(下)
- mysql_real_escape_string()
- [容斥原理] hdu 5072 Coprime
- addslashes()