我用ProgressDialog显示一个等待的进度条的同时去读取远程数据,但是有时候因为网络的原因读取不到,然后程序就一直卡死在那里了,请问有什么办法让ProgressDialog显示一个取消的按钮吗?或者有什么办法能够计时,在10秒钟后自动提示一个对话框退出ProgressDialog?
在线等,有答案马上结贴,本人结贴率100%。谢谢了!

解决方案 »

  1.   

    可以在网络中try后面加一个fanilly,如果出现一个异常,发送一个消息给handler,让handler处理把它dismiss
      

  2.   

    不用按钮就可以了...如果添加一个按钮,界面会很难看的,只要在适当的地方判断一下ProgressDialog是否isShowing,如果在运行就让其dismiss
      

  3.   

    我是在读取了数据的线程中做的dismiss,如果放在fanilly中dismiss的话,那ProgressDialog不是刚开始运行就给dismiss了吗?
    能给下代码吗?
    我是搞.NET的,对android不熟悉,谢谢了。
      

  4.   

    public void login(String username,String password){
        //启动ProgressDialog
        new Thread(new Runnable(){
            public void run(){
                try{
                    //处理网络连接
                }catch(IOException e){
                    
                }finally(){
                    //关闭ProgressDialog
                }
            }
        }).start();
    }