我正在开发一个 Android 应用程序,但在更新 GUI 时遇到了问题。基本上我想要实现的是当我的用户单击登录按钮时,调用 groupLogInProgress 上的 setVisibility 方法,如下定义并将其设置为 View.VISIBILE。然后启动我的登录方法,如果它返回成功值,则将 groupLogInProgress 设置为 View.GONE,并将 groupLogInSuccess 设置为 View.VISIBLE(显示“登录成功!”)暂停几秒钟并启动我的主要意图。如果我的登录方法返回 false,请将 groupLogInProgress 设置为 View.GONE,将 groupLogInError 设置为 View.VISIBLE。我似乎无法弄清楚如何在不导致我的应用程序在等待登录方法完成时挂起的情况下使这些事情发生。
以下是我到目前为止所拥有的,非常感谢任何帮助!
//Hide all Sign In progress/success/error layouts onCreate
groupLogInProgress = (LinearLayout) findViewById(R.id.groupLoginProgress);
groupLogInSuccess = (LinearLayout) findViewById(R.id.groupLoginSuccess);
groupLogInError = (LinearLayout) findViewById(R.id.groupLoginError);
hideAllStatus(); //this is simple method that sets all above groups to View.GONE
//Sign in button onClick handler
public void onClick(View v) {
loginData = LogInUser(username, password);
if(loginData == null)
{
//set groupLogInError to View.VISIBLE, all others to GONE
}
else
{
//set groupLogInSuccess to View.VISIBLE, all others to GONE and pause for a few seconds to allow user to see "Sign In Successful!" message
}
}