انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
جلوگیری از وارد شدن کاراکتر در EditText (برنامه نویسی اندروید)

جلوگیری از وارد شدن کاراکتر در EditText (برنامه نویسی اندروید)

#1
سلام به همه.
دوستان،من میخوام که مثلا فلان کاراکتر وارد جعبه متنم نشه،چی کار کنم.
من این شرط رو میذارم،اما ج نمیده:

کد:
if(txtX.gettext().toString()==".")
{
xxxxxxxxxx
}

از خاصیت digit هم نمیخوام استفاده کنم.
چون استفاده کردم.
ممنون.
پاسخ

جلوگیری از وارد شدن کاراکتر در EditText (برنامه نویسی اندروید)

#2
سلام اول متن رو به کارکتر آرایه ای تبدیل کن بعدش تک تک کاراکتر هارو بررسی کن که فلان مقدار نباشه

کد پی‌اچ‌پی:
String str txtX.gettext().toString();
char[] charArray str.toCharArray(); 

با یه حلقه فور هم بررسی کن که آیا برابر هست یا نه 

کد پی‌اچ‌پی:
for (int i =i<charArray.length i++)
if(
charArray[i] == "0")
 
  // some code 
پاسخ
 سپاس شده توسط batman1 ، admin

جلوگیری از وارد شدن کاراکتر در EditText (برنامه نویسی اندروید)

#3
سلام

دو راه دیگه هم دارید

یکی استفاده از InputFilterها و دیگری استفاده از خصوصیت Digits مربوط به خود EditText هستش

استفاده از Inputfilter

کد:
نحوه تعریف

private String blockCharacterSet = "~#^|$%&*!";

private InputFilter filter = new InputFilter() {

       @Override
       public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {

           if (source != null && blockCharacterSet.contains(("" + source))) {
               return "";
           }
           return null;
       }
   };

کد:
نحوه استفاده

editText = (EditText) findViewById(R.id.editText);
       editText.setFilters(new InputFilter[] { filter });

استفاده از خاصیت Digits مربوط به EditText

کد:
<EditText
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:id="@+id/et1"
     android:digits="0,1,2,3,4,5,6,7,8,9,qwertyuiopasdfghjklzxcvbnm"
     android:inputType="text"/>

نکته : 
در روش اول اون کاراکترهایی که نمیخوای وارد EditText بشن رو میزاری فیلتر بشه
در روش دوم برعکس روش اول اون کاراکترهایی که میخوای وارد EditText بشن رو میزاری توی قسمت Digits
پاسخ
 سپاس شده توسط دیب دمینی ، admin ، شماره مجازی امارات ، تلگرام ضد فیلتر 2023


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان