android 网络异步加载数据进度条


 

 ProgressDialog progressDialog = null;

public static final int MESSAGETYPE = 0;

private void execute() {

        try {

            // String dropList = requestCmd("474");

            progressDialog = ProgressDialog.show(Balance.this.getParent(),
                    "请稍等...", "数据正在加载中......", true);
            new Thread(new Runnable() {

                @Override
                public void run() {

                    //请求网络数据加载实现代码

                    Message msg_netData = new Message();

                    msg_netData.obj = dropList;//传送数据
                    msg_netData.what = MESSAGETYPE;

                    operate.sendMessage(msg_netData);
                }
            }).start();

        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    private Handler operate = new Handler() {

        @Override
        public void handleMessage(Message msg) {
            // TODO Auto-generated method stub
                   switch (msg.what) {
            case MESSAGETYPE:
                progressDialog.dismiss();
                break;
           
            default:

                break;
            }
          
           
        }

    };

线程通信必须放在线程内,否则不会提前弹出进步条,也就是下嘛这段代码必须放在线程内

Message msg_netData = new Message();
                    msg_netData.obj = dropList;
                    operate.sendMessage(msg_netData);

如果放在线程外,只会等到所有的数据加载完后同步到界面上显示。


http://www.seewn.com/



相关技术帖子:http://blog.sina.com.cn/gzwncb

 


 

你可能感兴趣的:(android,android网络异步处理,android进度条,异步数据加载)