检查EditText的字符数

时间:2016-01-27 09:44:10

标签: c# android xamarin xamarin.android

我通过Xamarin(C#)编写Android应用程序

我有EditText字段。并检查NullOrEmpty。

            if (string.IsNullOrEmpty (ulitsa.Text) ) {
                Toast.MakeText (this, "Заполните поле 'Ваша Улица'", ToastLength.Long).Show ();
            }

我想设置最大和最小字符过滤器。 Min-3,Max-6,如果用户没有这个字符数,则会显示Toast通知。

我怎么能意识到这一点?

2 个答案:

答案 0 :(得分:1)

myEditText.addTextChangedListener(new TextWatcher() {
            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                // TODO Auto-generated method stub
            }

            @Override
            public void beforeTextChanged(CharSequence s, int start, int count, int after) {
                // TODO Auto-generated method stub
            }

            @Override
            public void afterTextChanged(Editable s) {

                //Here, get text length:
                Integer len = myEditText.getText().toString().length();

               // Then, depending on the length display the toast and do what you want
            }
        });

但您实际上可以通过编程方式设置最大长度:

InputFilter[] filterArray = new InputFilter[1];
filterArray[0] = new InputFilter.LengthFilter(6);
myEditText.setFilters(filterArray);

答案 1 :(得分:0)

我解决问题

if(string.IsNullOrEmpty(kod.Text ) || kod.ToString().Length < 3 ||kod.ToString().Length > 3 )
            {
                Toast.MakeText (this, "Заполните поле 'Код'", ToastLength.Long).Show();
            }
            if(string.IsNullOrEmpty(tel.Text ) || tel.ToString().Length < 1 ||tel.ToString().Length > 7)
            {
                Toast.MakeText (this, "Заполните поле 'Телефон'", ToastLength.Long).Show();
            }