يمكنك استخدام رمز
Snackbar ل
عرض رسالة موجزة للمستخدم. على عكس
الإشعارات، تختفي
الرسالة تلقائيًا بعد فترة قصيرة. إنّ Snackbar هو
مثالي للرسائل الموجزة التي لا يحتاج المستخدم إلى اتّخاذ إجراء بشأنها. على سبيل المثال، يمكن لتطبيق
البريد الإلكتروني استخدام Snackbar لإعلام المستخدم بأنّ التطبيق
أرسل رسالة إلكترونية بنجاح.
استخدام CoordinatorLayout
تم إرفاق Snackbar بعرض. يوفّر Snackbar
وظائف أساسية إذا كان مرفقًا بأي عنصر مشتق من فئة
View، مثل
أي من عناصر التنسيق الشائعة. ومع ذلك، إذا كان Snackbar مرتبطًا بأحد CoordinatorLayout، فإنه يحصل على ميزات إضافية:Snackbar
- يمكن للمستخدم إغلاق
Snackbarمن خلال التمرير سريعًا لليمين أو لليسار. - ينقل التنسيق عناصر واجهة المستخدم الأخرى عند ظهور
Snackbar. على سبيل المثال، إذا كان التنسيق يحتوي علىFloatingActionButton، ينقل التنسيق الزرّ للأعلى عند عرضSnackbar، بدلاً من رسمSnackbarفوق الزرّ. يمكنك الاطّلاع على شكل ذلك في الشكل 1.
توفّر فئة CoordinatorLayout مجموعة أكبر من
وظائف
FrameLayout.
إذا كان تطبيقك يستخدم FrameLayout، يمكنك استبدال هذا التنسيق
باستخدام CoordinatorLayout لتفعيل وظائف Snackbar
الكاملة. إذا كان تطبيقك يستخدم عناصر تنسيق أخرى، احط عناصر التنسيق
الحالية بعنصر CoordinatorLayout، كما هو موضَّح في المثال التالي:
<android.support.design.widget.CoordinatorLayout android:id="@+id/myCoordinatorLayout" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> <!-- Here are the existing layout elements, now wrapped in a CoordinatorLayout. --> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <!-- ...Toolbar, other layouts, other elements... --> </LinearLayout> </android.support.design.widget.CoordinatorLayout>
اضبط علامة android:id على CoordinatorLayout.
ستحتاج إلى رقم تعريف التنسيق عند عرض الرسالة.
الشكل 1: ينقل الرمز CoordinatorLayout الرمز
FloatingActionButton للأعلى عند ظهور الرمز Snackbar.
عرض رسالة
هناك خطوتان لعرض رسالة. أولاً، عليك إنشاء كائن
Snackbar يتضمّن نص الرسالة. بعد ذلك، يمكنك استدعاء show()
طريقة هذا العنصر لعرض الرسالة على المستخدم.
إنشاء عنصر شريط معلومات سريع
أنشئ عنصرًا من النوع Snackbar من خلال استدعاء الطريقة الثابتة
Snackbar.make(). عند إنشاء Snackbar، حدِّد الرسالة التي
يعرضها ومدة عرضها:
Kotlin
val mySnackbar = Snackbar.make(view, stringId, duration)
Java
Snackbar mySnackbar = Snackbar.make(view, stringId, duration);
- عرض
-
العرض الذي تريد إرفاق
Snackbarبه. تبحث الطريقة في التسلسل الهرمي للعرض من العرض الذي تم تمريره إلى أن تصل إلىCoordinatorLayoutأو عرض محتوى ديكور النافذة. من السهل عادةً تمريرCoordinatorLayoutالذي يحيط بالمحتوى. - stringId
- معرّف المورد للرسالة التي تريد عرضها. ويمكن أن يكون نصًا منسَّقًا أو غير منسَّق.
- المدة
-
المدة التي يتم فيها عرض الرسالة. يمكن أن يكون
LENGTH_SHORTأوLENGTH_LONG.
عرض الرسالة للمستخدم
بعد إنشاء Snackbar، استخدِم show()
لعرض Snackbar على المستخدم:
Kotlin
mySnackbar.show()
Java
mySnackbar.show();
لا يعرض النظام عناصر Snackbar متعددة في
الوقت نفسه، لذا إذا كان العرض يعرض حاليًا Snackbar آخر، يُضيفه
النظام إلى "قائمة المحتوى التالي" ويعرضه بعد انتهاء صلاحيةSnackbar الحالي أو إغلاقه.Snackbar
إذا كنت تريد عرض رسالة للمستخدم ولا تحتاج إلى استدعاء أي من methods Snackbar لوظائف المساعدة، لن تحتاج إلى الاحتفاظ بالإشارة إلى Snackbar بعد استدعاء show(). لهذا السبب، من الشائع استخدام تسلسل الطريقة لإنشاء Snackbar وعرضه في عبارة واحدة:
Kotlin
Snackbar.make( findViewById(R.id.myCoordinatorLayout), R.string.email_sent, Snackbar.LENGTH_SHORT ).show()
Java
Snackbar.make(findViewById(R.id.myCoordinatorLayout), R.string.email_sent, Snackbar.LENGTH_SHORT) .show();