在我的Xamarin.Forms项目中,我有一个登录表单登录用户,然后将它们重定向到另一个页面。我想在尝试登录时显示一个ActivityIndicator,但将IsVisible设置为true在登录功能完成之前实际上不会生效。我的代码如下所示:Xamarin.Forms设置IsVisible在函数完成之前不会触发。
void OnLoginButtonClicked(object sender, EventArgs e)
{
LoadingIndicator.IsVisible = true;
Login();
}
public void Login()
{
var user = new User
{
Email = usernameEntry.Text,
Password = passwordEntry.Text
};
User validUser = AreCredentialsCorrect(user);
if (validUser != null)
{
Navigation.PushAsync(new ProfilePage());
}
else
{
messageLabel.Text = "Login failed";
passwordEntry.Text = string.Empty;
//It will only show the LoadingIndicator at this point.
}
}
如果用户是正确的,它永远不会显示LoadingIndicator因为它导航到另一个页面,才可以证明这一点。 如果用户无效,它将仅在碰到else子句并显示“登录失败”后才显示LoadingIndicator。任何人都可以解释为什么这是,我能做些什么来解决它?
不错,这工作得很好。谢谢! – Fayze