دليل React Native العربي و RTL: من الإعداد إلى الاختبار
دعم العربية في React Native لا ينتهي عند ضبط I18nManager. اتجاه الشاشة يؤثر في ترتيب العناصر، الأيقونات، القوائم، الإيماءات، النصوص المختلطة، والخطوط. وقد تبدو الشاشة سليمة في المحاكي بينما تنكسر بعد تغيير اللغة أو على جهاز بحجم مختلف.
هذه خريطة العمل الكاملة، وتتبعها خمسة أجزاء متخصصة لكل طبقة.
1. ثبّت قرار الاتجاه من البداية
حدد إن كان التطبيق عربياً فقط أم متعدد اللغات. تغيير forceRTL يحتاج عادة إلى إعادة تحميل كاملة للتطبيق، لذلك يجب أن يكون اختيار اللغة ومسار إعادة التشغيل مفهومين قبل بناء عشرات الشاشات.
اقرأ الجزء الأول: الإعداد وإدارة الاتجاه لتكوين I18nManager وحفظ اللغة والتعامل مع إعادة التشغيل.
2. ابن التخطيط بخصائص منطقية
لا توزع row-reverse عشوائياً في كل مكون. اجعل اتجاه الحاوية نابعاً من اللغة، واختبر المكونات التي لها معنى اتجاهي مثل زر الرجوع، شريط التقدم، الكاروسيل، والسحب.
راجع الجزء الثاني: تخطيطات RTL لأمثلة القوائم والمحاذاة والمسافات والمكونات التي تتغير فعلياً بين الاتجاهين.
3. اختبر الخط العربي بالنص الحقيقي
تحميل ملف الخط وحده لا يثبت أنه مناسب. افحص الأوزان الموجودة فعلاً، ارتفاع السطر، التشكيل، الأرقام، النصوص الطويلة، ورسائل الخطأ. لا تستخدم اسماً لوزن لم يتم تضمين ملفه في التطبيق.
يوضح الجزء الثالث: الخطوط والنص العربي تنظيم الملفات وربط الأوزان ومراجعة القياسات على iOS و Android.
4. صمم المكونات في الحالتين
بطاقة تعمل بالعربية قد تفشل بالإنجليزية، والعكس صحيح. اختبر الأزرار وحقول الإدخال والقوائم وعناصر التنقل مع الاتجاهين ونصوص قصيرة وطويلة وحالات تحميل وخطأ وتعطيل.
يتناول الجزء الرابع: المكونات القابلة لإعادة الاستخدام طريقة إبقاء المنطق في مكون واحد دون بناء نسختين منفصلتين لكل لغة.
5. راجع الأخطاء التي لا تظهر في الشاشة الأولى
المشكلات المتكررة تشمل أيقونة رجوع مقلوبة مرتين، قائمة تبدأ من نهاية غير متوقعة، بريد إلكتروني يقرأ بترتيب مربك، حركة انتقال تناقض الاتجاه، أو خط يظهر بوزن وهمي على نظام واحد.
استخدم الجزء الخامس: الأخطاء الشائعة والاختبار كقائمة مراجعة قبل الإصدار.
مصفوفة اختبار صغيرة لكنها مفيدة
اختبر على iOS و Android، في العربية والإنجليزية، وعلى شاشة صغيرة وشائعة وكبيرة عندما يتغير التخطيط. أضف تكبير النص، لوحة مفاتيح عربية، نصاً مختلطاً، اتصالاً بطيئاً، وحالة خطأ من API.
راجع أيضاً التركيز والوصول وإعلان الأخطاء لقارئ الشاشة. الترتيب البصري وحده لا يثبت أن ترتيب القراءة صحيح.
متى تعتبر دعم RTL منجزاً؟
يكون الدعم جاهزاً عندما تعمل المهمة الأساسية في الاتجاهين، وتبقى النصوص الطويلة مقروءة، وتحافظ الأيقونات والإيماءات على معناها، وتنجح اختبارات الجهاز أو المحاكي المستهدف. لقطة شاشة واحدة لا تكفي.