اضافة مكتبة Binding Validator في android studio

 

اضافة مكتبة Binding Validator في android studio

اضافة مكتبة Binding Validator في android studio


واحد من المشاكل التي تقابلنا كمبرمجين هو التعطيل في عمل if للمدخلات التي قام بها المستخدم مثل عمل if اذا كان الاميل فارغ اخرج رسالة من فضلك ادخل الاميل او اذا كان الرقم السري غير متطابق اخرج رسالة برجاء كتابة الرقم السري بشكل صحيح , كل هذة المدخلات التي يقوم بها المستخدم نحتاج لعمل اختبار لها لضمان عدم ظهور مشكلة في التطبيق او كراش للتطبيق , في الواقع قام احد المطورين بعمل لنا مكتبة تحل هذة المشكلة بشطل سريع جدا وكل ما تحتاجه هو استخدام databinding لاستخدامها مع تثبيت ملحقات المكتبة 


من اكثر البرامج التي قدمنا عليها شروحات في موقعنا هي برنامج اندرويد استوديو حيث شرحنا لكم اغلب تفاصيل البرنامج تقريبا وشرحنا لكم كيفيه تطوير تطبيقات الاندرويد من خلاله ايضا هذا البرنامج يعد واحد من اقوى البرامج التي تستخدم في تطوير وصناعه تطبيقات الاندرويد ايضا نحاول في موقعنا مشاركه كل مايهمك في هذا المجال وتقريبا كل شيء اتعلمه اقوم بتوينه لكم في هذا الموقع وفي هذه المقاله باذن الله تعالى سوف نتعرف مقالة مميزة وشرح مميز في هذا البرنامج الاكثر من رائع والذي يفضله المبرمجين في عمليات تطوير تطبيقات الاندرويد او اجهزة الموبايل بشكل كامل وذلك سهولته وبسبب توفير الكثير من الادوات التي تنظم العمل ونستطيع انجاز الاعمال من خلالها بشكل اكبر واسرع


اذا كنت تبحث عن شروحات في مجال تطوير تطبيقات الاندرويد والصناعه تطبيقات الهواتف الذكيه فانصحك جدا بمشاهده الموقع في هذا الموقع شاركت معكم مجموعه كبيره وضحمة من الاكواد والشروحات وتقريبا غطينا معكم البرنامج بشكل كامل و اغلب الاشياء التي تستخدم فيها ودائما نحاول تغذيه الموقع بشروحات جديده واكواد جديد وافكار جديدة دائما ونستطيع القول انك من خلال الشروحات التي قدمناها تستطيع بكل سهوله تطوير اي فكرة تطبيق تخطر ببالك حيث يمكنك البحث عن الشيء الذي تريد عمله في تطبيق و سوف تجده باذن الله في موقعنا واذا لم تجده حاول ترك لنا تعليق ليتم توفيرة 


تثبيت مكتبة Data Binding Validator للتاكد من مدخلات المستخدم


قم اولا بوضع المكتبة في المكان المخصص لها مع التاكد من انها تعمل بشكل صحيح ولا تنسى ان تقوم بتفعيل Data Binding داخل تطبيقك لانه بدونها لن تعمل المكتبة وقد سبق وشرحنا لكم الData Binding في الكثير من المقالات السابقة بشكل مفصل .


Data Binding Validator


  dependencies {
    compile 'com.github.Ilhasoft:data-binding-validator:LATEST-VERSION'
  }
  


كود Binding Validator الخاص بتصميم xml


كود Binding Validator الخاص بتصميم xml


استخدام المكتبة يكون داخل ملف xml ولهذا عليك بتحويل اولا التصميم الخاص بك الى Data Binding وبعدها تستطيع استخدام ما تريد من داخلها , كل ما عليك هو كتابة اسم العنصر الذي تريد اختباره او نوع المدخلات او عدد الحروف او اذا كان رقم سري التاكد من وجود بعض الsimples بداخله وهنا استخدمنا بعض خصائص المكتبة داخل edit text الموجود في الكود التالي .


mainactivity.xml


<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools">

    <data>
    </data>

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity">

        <EditText
            android:id="@+id/tv"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            tools:text="Hello World!"
            app:validateMinLength="@{4}"
            app:validateMaxLength="@{10}"
            app:validateEmpty="@{true}"
            app:validateDate='@{"dd/MM/yyyy"}'
            app:validateRegex='@{"[a-zA-Z0-9-._]+"}'
            app:validateDateMessage="@{@string/dateErrorMessage}"

            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toTopOf="parent" />

        <Button
            android:id="@+id/btn_login"
            android:layout_width="200dp"
            android:layout_height="wrap_content"
            android:text="login"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@id/tv" />

    </androidx.constraintlayout.widget.ConstraintLayout>
</layout>


كود جافا الخاص بمكتبة Binding Validator


الاكواد الخاصه التي يمكنك استخدامها في الكود الخاص بالمكتبة , في الواقع لن تحتاج الى كتابة اي كود اطلاقا الا اذا وجب الامر مثال على ذلك تريد طباعة نص اذا قام بكتابة البيانات بشكل صحيح او عمل اكشن معين اذا كانت البيانات سليمة وايضا عمل نص اخر اذا كانت البيانات غير صحيحة .


كود جافا الخاص بمكتبة Binding Validator


MainActivity.class


public class MainActivity extends AppCompatActivity {
    ActivityMainBinding binding;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        binding = DataBindingUtil.setContentView(this, R.layout.activity_main);

        Validator validator = new Validator(binding); // check for choose validator Ilhasoft
        binding.btnLogin.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (validator.validate()) {
                    Toast.makeText(MainActivity.this, "Yes", Toast.LENGTH_SHORT).show();
                } else {
                    Toast.makeText(MainActivity.this, "No", Toast.LENGTH_SHORT).show();
                }
            }
        });
    }
}


خصائص اخرى يمكنك استخدامها في المكتبة لانواع المدخلات | Validate Input Types


<EditText app:validateType='@{"email"}' />

<EditText app:validateType='@{"url"}' />

<EditText app:validateType='@{"creditCard"}' />

<EditText app:validateType='@{"username"}' />

<EditText app:validateType='@{"cpf"}' />


تعليقات