EditText

كتير من التطبيقات بتعتمد علي أخذ بيانات من المستخدم للتطبيق اليوم سنعرف كيف نأخذ البيانات وكيفية التعامل معها ؟

في البداية يتم تحديد ال Layout التي ستستخدم ويفضل أستخدام RelativeLayout  حيث تظهر كل ال views مرتبطة بعضها

نظراً لوجود عدد كبير من views يفضل أستخدام ٍScrollView لأن الشاشة لن تظهرها كلها بالتالي نحتاج للنزول و الصعود ويتم ذلك من خلاله ويقفل التاج الخاص به في نهاية الملف بعد إضافة كل ال Views

أستخدمنا مجموعة من TextView ووظيفتها هي عرض نص ثابت في التطبيق وكما تعودنا يتم إدرا ج عدد من الخصائص لكل view كالتالي

id اسم يميزه عن غيره من views

العرض النص يملئ كل العرض

الأرتفاع يكون فقط على حسب النص

النص المراد ظهوره ويتم كتابته في ملف المسميات ثم أستدعائه هنا هذه الطريقة

ليكون الكود النهائي :–

وتظهر على التصميم بالشكل التالي

2015-01-09_16-25-08

موضوع حديثنا اليوم هو  Edittext بها تستطيع أن تأخذ بيانات نصية – رقمية – بيانات الايميل – الباسورد – تليفون بطرق بسيطة جدا وهي إنشائك لصفحة خاصة بجمع البيانات وبعدها تنشئ مجموعة من EditText  من خلال السحب والادارج على صفحة التصميم

2015-01-09_16-28-03

ليكون الشكل على صفحة التصميم كالتالي

2015-01-09_16-25-34

أو كتابة الاكواد في الصفحة المخصصة للكود بالتصميم وتحديد مجموعة من الخصائص أولها

وهو خاص بعمل Id وتعرفنا من قبل على اهميته في تميز view عن باقي views كما يستخدم في التعامل معه داخل ملف الجافا

ثانيها :- تحديد العرض الخاص بها ويفضل أن يكون match_parent ليلائم حجم الكتابة فقط .

ثالثاً : تحديد الطول ويفضل أن يكون match_parent ليلائم حجم الكتابة فقط.

رابعاً نظراً لان ال Layout المستخدمة هي RelativeLayout

فتم استخدام

وذلك لتحديد أن edit text يقع أسفل view أخر وكتب ال id الخاص به.

اذا كنت ترغب في ظهور نص محدد يظل ظاهر على edittext  الى ان يتم الكتابة بداخله فيتم إدراج hint كالتالي وهنا نستخدم ملف المستميات والذي تعرفنا عليه من قبل في إستخدام مسميات والاستعانة بها هنا بهذه الطريقة

ليكون شكلها النهائي كالتالي

2015-01-09_16-26-26

للكتابة في سطر واحد فقط يتم اضافة وtrue للتأكد على رغبتك في كونه سطر واحد والعكس إذا رغب في أكثر من سطر

ليكون شكل الكود النهائي وهذ الكود لنص عادي

لأضافة نوع البيانات المدخلة يتم إدراج inputType طبقاً لنوع البيانات تظهر لوحة مفاتيح مناسبة لكل نوع .

  فيتم هنا إدراج بيانات الباسود والتي تظهر على هيئة نجوم

لأدراج بيانات الأيميل

لأدراج بيانات التليفون

لأدراج بيانات رقمية

لأدراج بيانات رقمية عشرية

ليكون الشكل النهائي

قبل إدخال البيانات

 2015-01-09_6-17-31

بعد إدخال البيانات

2015-01-09_6-15-29

يبدأ الجزء الخاص بكيفية التعامل مع هذه البيانات وكما تعلمنا من قبل أي view لابد من الحصول على id الخاص به ليتم التعامل معه داخل ملف الجافا

في بداية الكلاس بدأنا في تعريف أثنين من الأوبجكت من

ثم داخل الميثود onCreate  بدأنا في الحصول على id من ملف R كالتالي

 

بالتالي نقدر نتعامل معهم داخل الكود بكل سهولة ونجري مجموعة من العمليات المكتلفة من تكبير الخط تغير نوع الخط ولونه وغيره الكثير .

هنقوم بعمليات بسيطة وعليك أن تفكر لعمل مثلا مجوعة من القواعد التي يجب أن يخضع لها المستخدم عند الادخال داخل كل واحد منهم .

يوجد لدينا ثلاث أزرار لكل منهم  وظيفة محددة وكلهم بيكون الأيفنت الخاص بهم على نفس الميثود الاتية:-

عملنا switch case على id الخاص بكل view من

في اول حالة

يظهر رسالة للمستخدم بالبيانات التي أدخلها بال edittedt

حيث أن editTextPlainTextInput.getText().toString() تكون نتيجتها هي البيانات المدخلة من المستخدم داخل edittext ويتم تحويلها الى string لتعرض بيانات مفهومة داخل الرسالة

لتظهر النتيجة

2015-01-09_6-18-01

في الحالة التانية للزرار عند الضغط عليه

هيتم اخذ البيانات الموجودة في editTextNumberInput كالتالي

ثم وضعها في  edittext الموجود في اول الابلكشن من خلال

ليكون الشكل النهائي

2015-01-09_17-16-09
في الحالة الاخيرة سيتم مسح البيانات داخل edittext

ليكون الشكل النهائي

2015-01-09_6-16-04في النهاية تسطيع أن تضيف إيفنت معين على EditText من خلال إضافة مييثود وإضافة الايفنت .

MainActivity.java

 activity_main.xml

 strings.xml

لتحميل المشروع من هنا

يرجي تقييم الموضوع

Facebooktwittergoogle_plusredditpinterestlinkedinmailby feather
The following two tabs change content below.

عهود على

Comments

comments

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *