2013-06-29 126 views
1

我正在做一个Android登录。它使用一个简单的验证,如果验证,它会调用一个方法来调用api。Android登录按钮隐藏按下

代码: ..

if(!Validate.isEmailAddress(inputEmail,false)){ 
    Toast.makeText(LoginActivity.this, "Enter proper email", Toast.LENGTH_LONG).show(); 
    validated = false; 
} 
else if(!Validate.hasText(inputPassword)){ 
    Toast.makeText(LoginActivity.this, "Enter password", Toast.LENGTH_LONG).show(); 
    validated = false; 
} 

if(validated){ 
    btnLogin.setVisibility(View.INVISIBLE); 
    loginLoading.setVisibility(View.VISIBLE); 
    UserFunctions userFunction = new UserFunctions(); 
    JSONObject json = userFunction.loginUser(email, password); 
      // check for login response 
    try { 
     if (

但setVisibility不能在这里工作。它一直保持到登录过程完成。登录过程需要15秒以上。所以我需要显示用户在登录按钮的地方加载图像

请帮助。谢谢:)

回答

0

你是在这两种情况下设置

validated = false; 

..所以validated总是false

检查,如果你之前正确设置该验证标志设置为true ...

+0

谢谢,其宣称为真,如果没有有效的发虚。它的工作,如果我评论这一行:JSONObject json = userFunction.loginUser(email,password); – user2534310

0

您运行UIThread登录过程,它可能会在后台线程。

+0

谢谢,是不可能隐藏btn并显示加载图像。其实我想要按照这个:[link] http://stackoverflow.com/questions/13269546/android-button-with-rotating-spinning-loading-image-when-pressed [/ link] – user2534310

1

使用AsyncTask代替。检查简单的例子here ..

您可以登录进程中显示progress dialog ...样品here