استخدِم شارة لعرض عنصر مرئي صغير يشير إلى الحالة أو قيمة رقمية على دالة مركّبة أخرى. في ما يلي بعض السيناريوهات الشائعة التي قد تستخدم فيها شارة:
- الإشعارات: عرض عدد الإشعارات غير المقروءة على رمز تطبيق أو جرس الإشعارات
- الرسائل: تشير إلى الرسائل الجديدة أو غير المقروءة في تطبيق محادثة.
- آخر المعلومات عن الحالة: تعرض هذه البطاقة حالة مهمة، مثل "مكتملة" أو "قيد التقدم" أو "تعذّر إكمالها".
- كمية سلة التسوّق: لعرض عدد السلع في سلة تسوّق المستخدم
- محتوى جديد: إبراز المحتوى أو الميزات الجديدة المتاحة للمستخدم
مساحة عرض واجهة برمجة التطبيقات
استخدِم الدالة المركّبة BadgedBox لتنفيذ الشارات في تطبيقك. وهي في النهاية عبارة عن حاوية. يمكنك التحكّم في مظهره باستخدام هذين المَعلمتَين الرئيسيتَين:
content: المحتوى القابل للإنشاء الذي يحتوي عليهBadgedBoxعادةًIcon-
badge: الدالة المركّبة التي تظهر كشارة فوق المحتوى عادةً ما يكون العنصر المركّب المخصّصBadge.
مثال أساسي
يعرض مقتطف الرمز التالي عملية تنفيذ أساسية لـ BadgedBox:
@Composable fun BadgeExample() { BadgedBox( badge = { Badge() } ) { Icon( imageVector = Icons.Filled.Mail, contentDescription = "Email" ) } }
يعرض هذا المثال شارة تتداخل مع الدالة المركّبة Icon المقدَّمة. يُرجى ملاحظة ما يلي في الرمز:
- تعمل
BadgedBoxكحاوية شاملة. - وسيطة المَعلمة
badgeللدالةBadgedBoxهيBadge. بما أنّBadgeلا تتضمّن أي وسيطات خاصة بها، يعرض التطبيق الشارة التلقائية، وهي عبارة عن دائرة حمراء صغيرة. - يمثّل
Iconوسيطة المَعلمةcontentفيBadgedBox. وهو الرمز الذي تظهر فوقه الشارة. في هذه الحالة، تكون أيقونة بريد.
يظهر على النحو التالي:
مثال تفصيلي
يوضّح المقتطف التالي كيف يمكنك عرض القيم في الشارة التي تستجيب لإجراءات المستخدم.
@Composable fun BadgeInteractiveExample() { var itemCount by remember { mutableIntStateOf(0) } Column( verticalArrangement = Arrangement.spacedBy(16.dp) ) { BadgedBox( badge = { if (itemCount > 0) { Badge( containerColor = Color.Red, contentColor = Color.White ) { Text("$itemCount") } } } ) { Icon( imageVector = Icons.Filled.ShoppingCart, contentDescription = "Shopping cart", ) } Button(onClick = { itemCount++ }) { Text("Add item") } } }
ينفّذ هذا المثال رمز سلة تسوّق مع شارة تعرض عدد السلع في سلة المستخدم.
- لا يظهر
BadgedBoxإلا عندما يكون عدد العناصر أكبر من 0. - تتحكّم وسيطتا
containerColorوcontentColorفي مظهر الشارة. - يظهر العنصر القابل للإنشاء
Textالخاص بفتحة المحتوىBadgeضمن الشارة. في هذه الحالة، يعرض عدد السلع في سلة التسوّق.
تظهر عملية التنفيذ هذه على النحو التالي: