EditText验证消息框Xamarin c#android

问题描述 投票:0回答:1

没有人知道在EditText.Text中输入值时如何显示消息框吗?示例:用户(x)单击表单并输入一个值...如果该值是10或更高,则他/她会收到一条错误消息,并且该值设置为默认值0 ... Ive首先遇到了错误当我尝试并进行convert.ToInt32或Int.Parse时,在“输入字符串的格式不正确”这句话下说了些什么,但是我将EditText.Text =“ 10”;它似乎正常工作,但是当我将循环放进去时崩溃了,并且没有显示错误。

EditText.Text = "10";
int x = Convert.ToInt32(EditText.Text.ToString()) // or Int.Parse(EditText.Text.Tostring())

// Validation
if( x >= 10) 
{
//message box appears and says you cant have a number 10 or higher then sets the value of x to 0
}
// Else sets x to the value the user puts in the editText.Text

我尝试了多种方法,谢谢。

c# android xamarin input xamarin.android
1个回答
0
投票

您可以侦听EditText TextChanged事件,并将EditText selection设置为结尾,使用ToastDialog显示错误消息:

EditText edit = FindViewById<EditText>(Resource.Id.edit);
edit.TextChanged += Edit_TextChanged;

private void Edit_TextChanged(object sender, TextChangedEventArgs e)
    {
        if (int.Parse(e.Text.ToString())>10)
        {
            edit.Text = "0";
            edit.SetSelection(edit.Text.Length);
            Toast.MakeText(this, "you cant have a number 10 or higher", ToastLength.Short).Show();
        }
    }
© www.soinside.com 2019 - 2024. All rights reserved.