输入完用户名及密码后,惦记登录按钮。此时我希望出现一个透明的层,然后出现登录中,或者出现进度的圈圈(后台此时用线程创建一个connection去第三方系统做验证)请问哪位有代码示例给看看啊,或者给说下实现的原理,要怎么去实现,谢谢了。

解决方案 »

  1.   

    登录成功后(第三方系统返回一个标志位),层消失,转到另外一个activity
      

  2.   

    可以用popupwindow来实现,你设置背景的清晰度alpha就行了
    也可以跳转到另外的activity,不过这个activity的模式要设置成dialog的模式,背景依旧要设置
      

  3.   

    直接在activity里面override onCreateDialog方法,在这个里面创建个ProgressDialog,这个对话框会交给这个acitvity管理,然后再调用showDialog和removeDialog进行操作,这样可以满足你的需求
      

  4.   

    说来说去,还是不好直接给你代码吧  private void doLogin() {
            progressDialog = ProgressDialog.show(login.this, "请稍等...", "登录商务视频会议中...", true); 
            new Thread() {
                public void run() {
                    try {
                     String jsonString = HttpInvoker.login(user.name, user.password);
                     if(jsonString != null){
                     JSONObject json = new JSONObject(jsonString);
                     if(json!=null && json.getInt("res")==1){
                      HttpInvoker.user = user;
                      LocalAccessor.getInstance(login.this).updateUser(user);   
                      Intent i = new Intent(login.this, MainMeetings.class);
                      startActivity(i);
                             finish();
                     }else{
                     handler.post(new Runnable() {
                                public void run() {                               
                                   new AlertDialog.Builder(login.this)
                                    .setMessage("登录失败,请检查账号信息!")
                                    .setPositiveButton("Okay", null)
                                    .show();  
                                }
                            });
                     }
                     }else{
                     handler.post(new Runnable() {
                                public void run() {                               
                                 new AlertDialog.Builder(login.this)
                                    .setMessage("登录失败,请检查账号信息!")
                                    .setPositiveButton("Okay", null)
                                    .show();  
                                }
                            });
                     }
                      
                    } catch (Exception e) {
                       e.printStackTrace();
                    }
                    progressDialog.dismiss();
                }
            }.start();
        }
      

  5.   

    楼上的您好,非常贴出代码,而且我照着您的,已经实现了一部分但是代码中如下报错handler.post(new Runnable() {这里是否还需要写上用什么类创建的吗?
      

  6.   

     Handler myHandler = new Handler(){
    public void handleMessage(Message msg)
    {
    switch(msg.what)
    {
    case 0:
    pd=ProgressDialog.show(ChildTab.this, 请稍等, 连接服务器中...,true,true);
    break;
    case 1:
                                           pd.dismiss();
                                           startActivity(intent);
    break;
    case 2:
    break;
    }
    super.handleMessage(msg);
    }
    };
    //另起线程连接服务器
    private void threading(){
    myHandler.sendEmptyMessage(0);
    new Thread() {
      public void run() {
      try {
      //连接服务器的方法
                                             //验证通过后
                                       intent = new Intent(--,--);
               myHandler.sendEmptyMessage(1);
          } 
          catch (Exception e) {
          e.printStackTrace();
          }
      }
      }.start();
    }
      

  7.   

    handler。。你没用过吗,就是    private Handler handler = new Handler();就Ok了