当前位置:编程学习 > JAVA >>

android ListView为嘛不刷新

while ((c = raf.read(bytes)) != -1) {
   out.write(bytes, 0, c);
   localreadbytes += c;
   if (localreadbytes / step != process) {
process = localreadbytes / step;
Data.list.get(position).setProcess(process);
myAdapter.notifyDataSetChanged();
   }
}

那个始终是0%  直到while语句结束才100%   怎么做才能刷新或者让那个数字走起来 --------------------编程问答-------------------- 求大神指点迷津   --------------------编程问答--------------------   if (localreadbytes / step != process) {

if 改成while 试试呢。调试下吧。因为你的Data.list.get(position).setProcess(process);
中 的process 不是实时的。  --------------------编程问答-------------------- 我试过了  还是始终是0不变   --------------------编程问答-------------------- myAdapter中进度绑定的就是Data.list中的getProcess值  我设置了setProcess值  
然后myAdapter.notifyDataSetChanged();  它只进入适配器的getCount()
根本不进getView --------------------编程问答-------------------- 也进入了getItemId --------------------编程问答-------------------- 哎,因为myAdapter里面的arrayList的值没有改变,你怎么刷新myAdapter了?先改变arrarylist的值再刷新myAdapter吧,,, --------------------编程问答-------------------- 我不是改变了Data.list.get(position).setProcess(process);值吗  就是那个百分值  这不算改变吗 --------------------编程问答--------------------
引用 7 楼 The_moyan 的回复:
我不是改变了Data.list.get(position).setProcess(process);值吗  就是那个百分值  这不算改变吗
肯定不算了,要改变myAdapter里面加载的那个arrarylist的值
--------------------编程问答--------------------
那个listItems.get(position).get(FileManager.PROCESS)的值就是Data.list.get(position).getProcess值  如果我改变了Data.list.get(position).setProcess(process)
那么getProcess值也就改变了  那么listItem的值不就改变了吗


--------------------编程问答--------------------
引用 9 楼 The_moyan 的回复:

那个listItems.get(position).get(FileManager.PROCESS)的值就是Data.list.get(position).getProcess值  如果我改变了Data.list.get(position).setProcess(process)
那么getProcess值也就改变了  那么listItem的值不就改变了吗
哎,看好,myAdapter里面的属性(context,arraylist,int,String[],int[])这个arraylist肯定add了许多hashmap<String,Object>对象对吧,你说listItems.get(position).get(FileManager.PROCESS)的值就是Data.list.get(position).getProcess值,那你要在外面申明你这个arrarylist的值就是等于Data.list,并且在刷新之前要将这个arrarlist.removeall,清空它的值,再重新赋值,,, --------------------编程问答-------------------- 好  我明天去公司试试   谢谢你的建议
补充:Java ,  Eclipse
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,