ذكري المظهر:بحاجة إلى التحقق من صحة نص التحرير للإدخال غير الفارغ

StackOverflow https://stackoverflow.com/questions/2692587

سؤال

إذا كنت أرغب في فرض الحد الأقصى لطول الإدخال في حقل EditText، فيمكنني استخدام سمة maxLength.ولكن إذا كنت أرغب في فرض حد أدنى للطول (في حالتي، ببساطة غير فارغ)، فلن أجد سمة minLength مقابلة.

لقد ألقيت نظرة أيضًا على سمات "inputType" المتنوعة (الهاتف وكلمة المرور وما إلى ذلك) ولكني لا أرى أي شيء مثل "مطلوب" أو "غير فارغ".

لا أستطيع أن أصدق أن هذا يتطلب مرشح إدخال مخصص؛من المرجح أن تكون الإجابة واضحة جدًا لدرجة أنه لا يتم تدوينها بالشكل الذي أطرح فيه السؤال.

هل كانت مفيدة؟

المحلول

يمكنك ببساطة التحقق من أن yourfield.text () لا يعادل فارغًا أو "" عند نقطة التقديم. إذا كان الأمر كذلك ، فطلب من المستخدم إدخال شيء ما.

نصائح أخرى

حذرا مع شيء بالرغم من ذلك.إذا كان لديك زر إرسال، على سبيل المثال، وقام المستخدم بالضغط على إرسال دون تغيير التركيز في TextEdit، فلن يتم استدعاء طريقتك.

قم بنشاط باستخدام نصين تحريريين وزر واحد باسم "انتقال":

1) يكتب المستخدم شيئًا ما في EditText1

2) ينقر المستخدم على EditText2

3) بدلاً من كتابة شيء ما، ما عليك سوى النقر فوق الزر "انتقال".

لن يتم استدعاء أسلوب onFocusChanged() الخاص بك لأن التركيز ليس "مفقودًا".

إذا كان لديك التحقق من الصحة في طريقة Go Button_click الخاصة بك، فسيتم تشغيله بالطبع، لكنك لن تحقق هدفك "كنت أبحث/أتمنى أن تكون طريقة لتقديم تعليقات فورية"

يمكنك تجربة استخدام TextWatcher.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top