في هذا الدرس سنتعلم كيف نتعامل مع String File سنتعلم كيف استخدامه في تصميم التطبيق وكيف استدعائه وكيف نمكن التطبيق من دعم اكثر من لغة .
ما هو String File ؟؟
هو ملف من نوع xml يحتوي على النصوص المستخدمة داخل التطبيق بحيث يمكن الوصول لأي نص واستخدامه اكثر من مرة في اكثر من مكان فقط عن طريق استدعاء اسم هذا النص ولا يستدعي كتابة النص كامل .
مثال : اذا اردنا كتابة مقال داخل TextView فلا يوجد اي داعي لكتابة الفقرة في بنية ال TextView واما فقط نعرف متغير داخل ملف String ونحفظ به نص هذا المقال , ونقوم داخل بنية ال TextView فقط بإستدعاء هذا المتغير .
يمكن الوصول الى String File من خلال
App >> res >> values >> strings.xml
طريقة تعريف متغير داخل string داخل String File :
<string name=”name”>Hareth</string>
هنا عرفنا متغير من نوع string بإسم name يحمل قيمة بداخله Hareth
الكود التالي يوضح كيف نستدعي هذا المتغير النصي من String File داخل بنية TextView :
اما اذا اردنا استدعاء هذا المتغير النصي من داخل كود الجافا ونريد استخدامه بداخل ال class يكون بهذه الطريقة :
;(String name = getResources().getString(R.string.name
قمنا بتعريف متغير من نوع String وطلبنا منه جلب قيمة من ملف Resources الى ملف String واجلب المتغير اللذي يحمل قيمة R.string.name .
كيف اجعل التطبيق يدعم اكثر من لغة ؟؟؟
قوم بإنشاء ملف يحمل اسم strings داخل ملف values
كما هو موضح بالشكل التالي :
نلاحض اننا في وضعنا اختصار اللغة بجانب كلمة values وضعنا ar اي اللغة العربية .
نقوم بنسخ نفس المتغيرات من ملف ال string الاول ووضعها بالملف الجديد ونعطي قيم عربية لهذه المتغيرات كما يلي :
<string name=”name”>حارث </string>
هكذا سيعمل التطبيق فعند تشغيل الجهاز باللغة الانجليزية تكون القيمة الظاهرة داخل ال TextView هي Hareth .
اما عند تغيير لغة الجهاز للعربية سوف يأتي بالقيم من ملف strings العربي فتكون القيمة الظاهرة داخل ال TextView هي حارث .