本帖最后由 zhanweichun 于 2010-11-26 12:16:20 编辑

解决方案 »

  1.   

    你的下载界面不就是显示下载列表的那个listview么?点击list项还要返回到下载界面?什么意思?
      

  2.   

    如果是界面跳转的话,你可以就创建一个activity,然后点击list的时候记录list项的信息,然后activity中根据指定listitem的信息来显示。
      

  3.   

    是这样的,首页是一个 start按钮,点击此按钮进入下载界面,在下载界面有输入URL框,下载进度, 下载按钮/查看下载列表按钮,当我点击下载列表按钮的时候能查看所有正在下载的列表.单击列表中某一项能返回到下载界面并显示下载进度(进度条还会向前走), 如何实现? 
    我现在能想到的办法是:点击下载按钮时把当前context保存到map中,点击列表项时获取context.然后Intent intent = new Intent();
     donwload obj = (downlad)(map.get(position));
                intent.setClass(DownLoadList.this, obj.getClass());
                startActivity(intent);
    这样不行,如何列表中有多个项,点击每一项返回的是最后一次的下载界面. 不知该如何返回.希望能指点一下.谢谢.
      

  4.   

    下载应该是一个service吧,
    你在里面进行广播
    根据广播的不同,更新界面。
    保存,没用啊。
    activity在后台被回收是迟早的事情。
      

  5.   

    你在启动下载的界面activity的时候,每一次onstart,接收广播,更新界面。还可以更新进度条。
      

  6.   

    你的下载动作应该放在一个service里面吧?在service里面开线程下载,然后进行广播。在activity里面接收service发过来的广播,这个广播是你自己定义的,所以你能根据广播的不同,进行界面更新操作。比如有几个正在下载啊,下载的进度啊,下载完成的建议存在数据库或者文件里面。activity,onstart的时候去文件或者数据库里面取,同时接收广播。
    个人见解,肯定有不足的地方,可能别人有更好的办法。
      

  7.   


    我的下载是直接new的一个Thread来下载的.没有放到service里面
      

  8.   


    但是我在列表中点击某一项的时候返回到下载activity中,如果能保证是当前列表项显示对应到下载界面?
      

  9.   


    没看懂,你的下载界面就只一个够啦,不用每一个下载项创建一个。在一个下载界面中用listview显示多条记录就是啦
      

  10.   

    其它的就是你解析广播的数据了,根据你自己的需要。
    比如传过来一个arraylist,里面装什么,什么格式,怎么解析好。那自己就好办了。。
      

  11.   

    不行啊,要求是下载界面和下载列表界面是分开的.点击listview中的item返回到下载界面.同时需要显示下载进度.
      

  12.   


    你点击下载,startservice在service里面广播,同时你startactivity下载界面的activity,下载界面接受广播就是这样
      

  13.   


    这个我明白,我现在用的是Handler回调.在下载的发送message在handler里面处理(更新进度条).
    如果按照你说的这样做,在下载的service里面发送广播,在下载界面activity中接收并更新,那在ListView下载列表界面该如何做?也是接收广播.并更新吗? 当点击item时该怎么做? 希望指点
      

  14.   

    那在handler里面接收广播,更新界面需要线程post的,否则会报错。
    在有进度条的界面就接收广播啊,更新进度条更新界面
    我也就是这么想的,具体怎么做,有什么问题还是得你写的时候才知道。