এন্ড্রয়েড (Android) এ Saripaar Library দিয়ে ফরম ভ্যালিডেসন

 



আসসালামুয়ালাইকুম, আমরা যারা এন্ড্রয়েড ডেভেলপমেন্ট নিয়ে কাজ করি তারা সবাই হয়তবা ভ্যালিডেসন নাম এর সাথে পরিচিত। কারণ এন্ড্রয়েড ডেভেলপমেন্ট এর প্রায় জায়গায় এটি ব্যবহার করা হয়।যেমন যদি লগইন পেইজ ডিজাইন করি।এখানে ইউজার যদি ইমেইল পাসওয়ার্ড না দিয়ে লগইন বাটন এ ক্লিক করে,তাহলে আমরা এরর দেখাই।হতে পারে  এটি টোস্ট এ অথবা এডিট টেক্সট এ এরর মেসেজ এড করে।


এইটা যদি আমরা র  প্রসেস এ করি তাহলে ডিজাইন এ যতগুলো এডিট টেক্সট আছে সবগুলো চেক করার পর এরর টেক্সট এড করতে হবে।এইটা এক সাথে সময় সাপেক্ষ এবং বিরক্তিকর ব্যাপার।আমার ডিজাইন এ যদি ১০ টা যয়গায়  ভ্যালিডেসন করার প্রয়জন হয় তাহলে ইফ ইলস দিয়ে ১০ জায়গায় আমাকে চেক করতে হবে।

উফফ,


এই সমস্যা সমাধান করতেসে সারিপার  লাইব্রেরি ।শুধু কিছু ইন্টারফেস , এনটেসন  এবং বিলড ইন মেথড ব্যাবহার করেই এই লাইব্রেরি ব্যাবহার করা যায়।


1st Step


গ্রাডেল এ সারিপার লাইব্রেরির ডিপেনডেন্সি এড করতে হবে।

যদি কটলিন এ ইমপ্লিমেন্ট করি তাহলে সারিপার লাইব্রেরির সাথে সাথে ভিউ বাইন্ড করার জন্য বাটার নিফ লাইব্রেরি এড করতে হবে।


Example,





নেট এ সার্চ করে আপডেটেড ভার্সন টি দিতে পারেন



2nd Step


ভিউ বাইন্ড করা এবং অন ক্রিয়েট  এর মধ্যে  বাটার নিফ  লাইব্রেরি ইনিসিয়াল করা।


















3rd Step


কোন ভিউ এ ভ্যালিডেসন  কনডিসন কি হবে সেইটা বলে দেওয়া।


যেমন ইমেইল এডিট টেক্সট এ আমি চাই non empty রাখতে। So,  এখানে সারিপার এর @NotEmpty anotation টি ব্যাবহার করলেই হচ্ছে।


আবার পাসওয়ার্ড এডিট টেক্সট এ আমি চাই মিনিমাম ৬ ক্যারেক্টার দিতে হবে। So, আমি এখানে @Password  annotation এ বলে দিতে পারি মিনিমাম ক্যারেক্টার হবে ৬ ডিজিট।


Example,













4th Step


সারিপার লাইব্রেরির ইন্টারফেস  ValidationListener কে কল করা। ValidationListener কে কল করলে ২ টা মেথড ইমপ্লিমেন্ট  করতে হবে।


  1. onValidationFailed

এই মেথড এ বলে দিতে হবে ভ্যালিডেসন ফেইল হলে কি হবে।


Example,

















এই মেথড এ সব এরর ভিউ গুলি রেটারন করে। Then  ভিউ গুলি তে এরর মেসেজ সেট করা হয়। ইজি না  ?


  1.  onValidationSucceeded


এই মেথড তখন ই কল হবে যখন আমার ভ্যালিডেসন  সাকসেস হবে। যেমন লগইন ডেটা সার্ভার এ পাঠানো।

5th Step


Validator ক্লাস এর অবজেকট তৈরি করা এবং validate কিনা সেইটা চেক করা। এখানে চেক টি করা হচ্ছে লগইন বাটন এ।


Example,





Output:



টেস্ট প্রোজেক্টটির গিটহাব লিঙ্ক এখানে




বিদ্রঃ আমি এন্ড্রয়েড ডেভেলপমেন্ট এর এক জন ছাত্র।  ভুল ত্রুটি মার্জনীয়। ধন্যবাদ।


Comments

Popular posts from this blog

কম Time complexity তে একটি সংখ্যার Divisor বের করার অ্যালগরিদম (Algorithm)