我有一个列表视图与复选框。我在一个EventHandler类中安排我的列表视图。我想在按下后退按钮时取消选中所有复选框。我在另一个活动中调用onBackPressed方法。所以我应该编写另一个函数来返回一个视图。请帮忙。我搜索了很多,但我找不到确切的解决方案。取消选中所有选中的复选框onBackPressed在android
课内:我得到一个Viewholder的数组列表来取消复选框的选择。
private ArrayList<ViewHolder> mViewHolders = new ArrayList<>();
ViewHolder:
private static class ViewHolder {
TextView topView;
TextView bottomView;
TextView dateView;
ImageView icon;
CheckBox checkBox;
}
getView:
public View getView(int position, View convertView, ViewGroup parent) {
final ViewHolder mViewHolder;
int num_items = 0;
String temp = mFileMang.getCurrentDir();
File file = new File(temp + "/" + mDataSource.get(position));
String[] list = file.list();
if(list != null)
num_items = list.length;
if(convertView == null) {
LayoutInflater inflater = (LayoutInflater) mContext.
getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(R.layout.tablerow, parent, false);
mViewHolder = new ViewHolder();
mViewHolder.topView =(TextView)convertView.findViewById(R.id.top_view);
mViewHolder.bottomView = (TextView)convertView.findViewById(R.id.bottom_view);
mViewHolder.dateView =(TextView) convertView.findViewById(R.id.date_view);
mViewHolder.icon = (ImageView)convertView.findViewById(R.id.row_image);
mViewHolder.checkBox = (CheckBox) convertView.findViewById(R.id.row_checkBox);
convertView.setTag(mViewHolder);
} else {
mViewHolder = (ViewHolder)convertView.getTag();
} // I also make some text setting inside this.
在activity中创建一个回调函数,在onBackPressed()中,f ire回调方法,在您的适配器中实现回调并在回调方法体中取消选中复选框。 – EagleEye
但是也要考虑您希望禁用一个复选框或仅显示或仅显示所有这些复选框的情况。 –
我想要清除所有这些 – gunescelil