Grid هي واجهة برمجة تطبيقات Jetpack Compose
تتيح لك تنفيذ تصميم ثنائي الأبعاد بمرونة.
باستخدام واجهة برمجة التطبيقات هذه، يمكنك عرض العناصر في تنسيقات متعددة الأعمدة أو الصفوف تتكيّف مع حجم الحاوية المتاح.
Grid
كيف تختلف Grid عن العناصر القابلة للإنشاء المشابهة؟
يتضمّن Compose حاليًا مكوّنات مشابهة، مثل LazyVerticalGrid.
هذه المكوّنات مخصّصة بشكل أساسي لعرض مجموعات البيانات الكبيرة والمتجانسة، مثل عرض قائمة محتوى في تطبيق بثّ الفيديو. وهي غير مصمَّمة للتنسيق البنيوي للشاشة أو المكوّنات المعقّدة.
يمكنك أيضًا تنفيذ تخطيط ثنائي الأبعاد من خلال الجمع بين عناصر متعددة قابلة للإنشاء من Row وColumn.
ومع ذلك، لهذه الطريقة بعض السلبيات، مثل التسلسلات الهرمية المعقّدة وصعوبة التكيّف.
يقدّم الجدول التالي نظرة عامة حول التنسيقات المناسبة لكل واجهة برمجة تطبيقات:
| المكوّن | الغرض |
|---|---|
"LazyVerticalGrid" و"LazyStaggeredGrid" و"LazyHorizontalGrid" |
تصور مجموعات البيانات الكبيرة والمتجانسة التي تتطلب التحميل الكسول |
"Row" و"Column" و"FlexBox" |
تنسيق أحادي الأبعاد |
Grid |
التصميم الثنائي الأبعاد |
المصطلحات
تعرَّف على المصطلحات التالية
لفهم طريقة عمل Grid.
خط الشبكة
تتكوّن الشبكة من خطوط أفقية وعمودية. إذا كانت شبكتك تتضمّن ثلاثة صفوف، سيكون فيها أربعة خطوط أفقية، بما في ذلك الخط الذي يلي الصف الأخير. في الصورة التالية، يمثّل كل خط منقّط خط شبكة:
مسار الشبكة
مسار الشبكة هو المساحة بين خطَّين من خطوط الشبكة. يكون مسار الصف بين خطين أفقيين، ويكون مسار العمود بين خطين عموديين. لتحديد حجم هذه المسارات، يجب تعيين حجم لها عند إنشاء الشبكة.
خلية شبكة
خلية الشبكة هي نقطة التقاطع بين مسار الصف ومسار العمود.
مساحة الشبكة
تتألف مساحة الشبكة من عدة خلايا شبكة. يمكنك تحديد مساحة شبكة من خلال جعل عنصر يمتد على مسارات متعددة.
فجوة الشبكة
فجوة الشبكة هي المساحة بين مسارات الشبكة. لا يمكنك وضع عنصر في واجهة المستخدم في فجوة، ولكن يمكنك توسيع عنصر في واجهة المستخدم ليشملها.