المكون ToolbarAndroid في ReactNative

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث

ملاحظة: هذا المكون أُهمل وأُزيل من React Native ابتداء من الإصدار 0.61.0، لكن يمكنك استخدام toolbar-android بدلًا منها.

مكوّن منصّة React الذي يغلّف الأداة Toolbar الخاصة بمنصّة Android فقط، حيث يمكن لشريط الأدوات (Toolbar) عرض شعارٍ (logo) ورمز تنقّل (navigation icon) وعنوانٍ رئيسيٍّ وفرعيٍّ وقائمة إجراءاتٍ (actions)، حيث يتوضّع العنوان الرئيسي والفرعي في المنتصف كونهما يتوسّعان بينما يتوضّع الشعار ورمز شريط التنقل على اليسار، وقائمة الإجراءات على اليمين.

في حال احتوى شريط الأدوات على مكوّن ابنٍ وحيدٍ فسيعرَض بين العنوان وقائمة الإجراءات.

على الرغم من دعم شريط الأدوات استخدام الصور البعيدة (remote) على أساس رموز للشعار وشريط التنقل وقائمة الإجراءات، إلا أن ذلك يُستخدَم فقط في الوضع DEV حيث يترجَم (require('./some_icon.png' إلى عنوان URL مجمّعٍ، ومع ذلك يجب استخدام مصدرٍ قابل للرسم لهذه الرموز في وضع الإصدار (release mode) دائمًا، بالتالي لا تستخدَم العناوين ‏{'...//uri: 'http} بصورة صريحة، لكي يستطيع ('require('./some_icon.png اختيار المصدر المناسب لهذه الرموز تلقائيًا.

مثال

render: function() {
  return (
    <ToolbarAndroid
      logo={require('./app_logo.png')}
      title="AwesomeApp"
      actions={[{title: 'Settings', icon: require('./icon_settings.png'), show: 'always'}]}
      onActionSelected={this.onActionSelected} />
  )
},
onActionSelected: function(position) {
  if (position === 0) { // index of 'Settings'
    showSettings();
  }
}

الخاصيات

موروثة من الخاصيات View .

actions

تضع الإجراءات المحتملة في شريط الأدوات كجزءٍ من قائمة الإجراءات، حيث تظهر كأيقوناتٍ أو نصٍّ على يمين شريط الأدوات، وفي حال لم تتّسع فستوضع في قائمة الفائض overflow، وتأخذ هذه الخاصيّة مصفوفةً من الكائنات، ولكلّ كائنٍ المفاتيح التالية:

  • title: عنوان الإجراء، وهو مطلوب.
  • icon: أيقونة الإجراء، مثل: ‪.require('./some_icon.png')
  • show: يحدد عرض الإجراء كأيقونةٍ أو إخفاءه في قائمة الفائض (overflow)، وله القيم always، وifRoom، وnever.
  • showWithText: قيمة منطقية، يحدِّد إظهار النص بجانب الأيقونة أو عدم إظهاره.
النوع مطلوب
{title: string,icon: optionalImageSource,show: enum('always', 'ifRoom', 'never'),showWithText: bool} لا

contentInsetStart

تحدد شكل محتوى حافة بداية شريط الأدوات، حيث سيؤثر هذا على المساحة الصالحة لمحتوى شريط الأدوات أكثر من رمز شريط التنقّل والقائمة، كما يحدد الحدّ الأدنى لهامش المحتوى، ويمكن استخدامه لمحاذاة محتوى شريط الأدوات بكفاءةٍ على طول خطوط الشبكة المعروفة.

النوع مطلوب
عدد (number) لا

contentInsetEnd

تحدد شكل محتوى حافة نهاية شريط الأدوات، حيث سيؤثر هذا على المساحة الصالحة لمحتوى شريط الأدوات أكثر من رمز شريط التنقّل والقائمة، كما يحدد الحدّ الأدنى لهامش المحتوى، ويمكن استخدامه لمحاذاة محتوى شريط الأدوات بكفاءةٍ على طول خطوط الشبكة المعروفة.

النوع مطلوب
عدد (number) لا

تحدّد شعار شريط الأدوات.

النوع مطلوب
مصدر الصورة (optionalImageSource) لا

navIcon

تحدد أيقونة شريط التنقّل.

النوع مطلوب
مصدر الصورة (optionalImageSource) لا

onActionSelected

ردّ نداءٍ يستدعى عند اختيار الإجراء، حيث يُمرَّر لها موقع الإجراء ضمن مصفوفة الإجراءات.

النوع مطلوب
دالة (function) لا

onIconClicked

رد نداءٍ يستدعى عند اختيار الرمز.

النوع مطلوب
دالة (function) لا

overflowIcon

تحدد أيقونة قائمة الفائض.

النوع مطلوب
مصدر الصورة (optionalImageSource) لا

rtl

تُستخدم لضبط اتجاه شريط الأدوات من اليسار إلى اليمين، كما يجب إضافة "android:supportsRtl="true إلى الملف AndroidManifest.xml الخاص بالتطبيق ومن ثم استدعاء (setLayoutDirection(LayoutDirection.RTL في دالة onCreate للنشاط الرئيسي (MainActivity).

النوع مطلوب
(bool) لا

subtitle

تحدد العنوان الفرعي لشريط الأدوات.

النوع مطلوب
سلسلة نصية (string) لا

subtitleColor

تحدد لون العنوان الفرعيّ لشريط الأدوات.

النوع مطلوب
لون (color) لا

testID

تُستخدم لوضع هذا الإظهار في الاختبارات الشّاملة (end-to-end).

النوع مطلوب
سلسلة نصية (string) لا

title

تحدد العنوان الرئيسيّ لشريط الأدوات.

النوع مطلوب
سلسلة نصية (string) لا

titleColor

تحدد لون العنوان الرئيسيّ لشريط الأدوات.

النوع مطلوب
لون (color) لا

مصادر