تكرار السؤال: …
الإجابة المختصرة
باستخدام وحدة I18nManager وخصائص Flexbox المحايدة للاتجاه مثل marginStart و marginEnd و paddingStart و paddingEnd بدلاً من left و right.
الشرح
عند التحويل للغة العربية، ينعكس اتجاه التطبيق بالكامل ليصبح من اليمين لليسار. استخدام خصائص left و right الثابتة يمنع انعكاس التصميم تلقائياً ويسبب تشوهاً. استخدام start و end يجعل النظام يعكس الهوامش والمحاذاة تلقائياً بناءً على اتجاه لغة الجهاز المكتشف بواسطة I18nManager.isRTL.
مثال بالكود
const styles = StyleSheet.create({
listItem: {
flexDirection: 'row',
alignItems: 'center',
// ينعكس تلقائياً في العربية والإنجليزية:
paddingStart: 16,
paddingEnd: 8,
marginEnd: 12,
}
});أخطاء شائعة
- استخدام marginLeft و marginRight الصلبة، مما يجبر المطور على كتابة شروط يدوية مضنية لكل عنصر في التطبيق.