ListView 单个Item 更新
来源:互联网 发布:看杀卫玠知乎 编辑:程序博客网 时间:2024/05/16 08:18
/**ListView单条更新--更新进度 * <br> XListView 需要减去头部 View 个数 * @param dto * the dto */ private void updateSingleRowProgress(MessageDTO dto) { if ((xListView != null) && (dto != null)) { int start = xListView.getFirstVisiblePosition(); for (int i = start, j = xListView.getLastVisiblePosition(); i <= j; i++) { try { MessageDTO tmp = (MessageDTO) xListView.getItemAtPosition(i); if (null != tmp && dto.getMessageid().equals(tmp.getMessageid())) { tmp.setFiletranssize(dto.getFiletranssize()); tmp.setMessagestate(dto.getMessagestate()); tmp.setProgress(dto.getProgress());//设置进度条,进行刷新进度 View view = xListView.getChildAt(i - start);//2017-07-16通过这个view 进行 刷新新的 adapter 里面的子View里面的对应progressView(eg: view.findviewbyid(resid)),不在进行adapterNotifyDataSetChanged// 方案二:listView.getadapter() 强制类型转换,adapter.getView(position) -- 因为adapter(被重写了),找到返回的那个View xListAdapter.setRefreshIVProgress(true); View contentView= xListView.getAdapter().getView(i, view, xListView); xListAdapter.setRefreshIVProgress(false);// xListView.getAdapter().getView(i, view, xListView); MyLog.e(TAG, "view == contentView :view = "+view.toString()+";contentView = "+contentView);//是相等的 View progressView=contentView.findViewById(R.id.roundProgressBar); if (progressView!=null) {if (progressView instanceof RoundProgressBar) {((RoundProgressBar)progressView).setProgress(dto.getProgress());}else {((ProgressBar)progressView).setProgress(dto.getProgress());}}else {xListView.invalidateViews();} break; } } catch (RuntimeException e) { OperLog.error(TAG, TAG, e); } } } }
在ADapter里面对应的设置
if (!isRefreshIVProgress) {MessageUtil.loadBitmapIv(bitmapUtils, "", data.getFilethumbpath(), iv_image, new CustomBitmapLoadCallBack(null));}使得 在获得View的时候不让ImageView重新加载一次,浪费
阅读全文
0 0
- ListView更新单个item
- listView 更新单个item
- ListView 单个Item 更新
- ListView刷新单个item
- 修改ListView单个Item
- listview单个刷新item
- listView刷新单个Item
- ListView刷新单个Item
- Listview 更新单个Item布局 和 listview.getLastVisiblePosition()=-1 问题的解决
- listView item进行更新
- 删除listview列表里面的单个item
- ListView点击单个Item失效问题解决办法
- listview和recycleview的刷新单个item
- 在listView里,只能选中单个item
- android listview单个item刷新某个控件
- ListView GridView 自定义ViewGroup的单个item 刷新 和 单个item中的局部元素刷新
- RecyclerView 更新单个item时,闪烁问题的处理
- 自定义ListView实现底部动画更新item
- 数据仓库,什么是数据仓库?
- SQL2005新建或修改维护计划提示“库没有注册”
- shell case正则匹配
- LintCode 155-二叉树的最小深度
- 207. Course Schedule
- ListView 单个Item 更新
- java 插入排序
- mybatis逆向工程之配置
- GitHub项目托管
- 进制转换(十进制转换N进制)的实现
- 超详细java中的ClassLoader详解
- Android内存进程管理机制
- 5.3二叉树的存储结构
- 风格迁移转换的两种实现