الواجهة AlertIOS في ReactNative

من موسوعة حسوب

مهملة: يمكنك استخدام الواجهة Alert بدلًا عنها.

تمكنك الواجهة AlertIOS من إنشاء صناديق تنبيهات أو صناديق إدخال لاستقبال بيانات من المستخدم على أنظمة iOS.

مثال: إنشاء تنبيهات

AlertIOS.alert(
  'Sync Complete',
  'All your data belongs to us.'
);

مثال: إنشاء صناديق إدخال

AlertIOS.prompt('Enter a value', null, (text) =>
  console.log('You entered ' + text)
);

يستحسن استخدام الدالة Alert.alert إذا كنت تريد الحصول على نفس السلوك على نظام أندرويد.

التوابع

‎alert()‎

static alert(title: string, [message]: string, [callbackOrButtons]: ?(() => void), ButtonsArray, [type]: AlertType): [object Object]

تُظهر تنبيهًا منبثقًا.

المعاملات

الاسم النوع مطلوب الوصف
title سلسلة نصية (string) نعم عنوان التنبيه، إعطاء القيمة null أو "" سيُخفي التنبيه.
message سلسلة نصية (string) لا رسالة إختيارية تظهر تحت العنوان.
callbackOrButtons دالة ‎?(() => void)،

أو النوع ButtonsArray

لا يجب أن تكون هذه المعاملات الاختيارية إمّا دالة أو مجموعة من الأزرار، ففي حال كانت دالة واحدة، تُستدعى عندما ينقر المستخدم على زرّ "موافق" (OK)؛ أمّا إذا كانت مجموعة أزار فيجب أن يشتمل كلّ زرّ على مفتاح text ودالة onPress، وstyle والتي يجب أن تكون قيمتها إحدى القيم default أوcancel أو destructive.
type AlertType لا معامل مهمل يجب ألّا يُستخدم

إليك مثال مع أزرار مخصصة:

AlertIOS.alert(
  'Update available',
  'Keep your app up to date to enjoy the latest features',
  [
    {
      text: 'Cancel',
      onPress: () => console.log('Cancel Pressed'),
      style: 'cancel'
    },
    {
      text: 'Install',
      onPress: () => console.log('Install Pressed')
    }
  ]
);

‎prompt()‎

static prompt(title: string, [message]: string, [callbackOrButtons]: ?((text: string) => void), ButtonsArray, [type]: AlertType, [defaultValue]: string, [keyboardType]: string): [object Object]

تظهر صندوق إدخال لاستقبال بيانات نصية من المستخدِم.

المعاملات:

الاسم النوع مطلوب الوصف
title سلسلة نصية (string) نعم عنوان التنبيه، إعطاء القيمة null أو "" سيُخفي التنبيه.
message سلسلة نصية (string) لا رسالة إختيارية تظهر تحت العنوان.
callbackOrButtons دالة ‎?(() => void)، أو النوع ButtonsArray لا يجب أن تكون هذه المعاملات الاختيارية إمّا دالة أو مجموعة من الأزرار، ففي حال كانت دالة واحدة، فستُستدعى عندما ينقر المستخدم على زرّ "موافق" (OK)، أمّا إذا كانت مجموعة أزار فيجب أن يشتمل كلّ زرّ على مفتاح text ودالة onPress، وstyle والتي يجب أن تكون قيمتها إحدى القيم default أوcancel أو destructive.
type AlertType لا يُحدّد نوع النصّ الذي يجب إدخاله، ويأخذ القيم plain-text أو secure-text أو login-password.
defaultValue سلسلة نصية (string) لا يُحدّد القيمة الإفتراضية لحقل الإدخال.
keyboardType سلسلة نصية (string) لا يُحدّد نوع لوحة المفاتيح. ويأخذ القيم default أو email-address أو numeric أو phone-pad أو ascii-capable أو numbers-and-punctuation أو url أو number-pad أو name-phone-pad أو decimal-pad أو twitter أو web-search.

إليك مثال مع أزرار مخصصة:

AlertIOS.prompt(
  'Enter password',
  'Enter your password to claim your $1.5B in lottery winnings',
  [
    {
      text: 'Cancel',
      onPress: () => console.log('Cancel Pressed'),
      style: 'cancel'
    },
    {
      text: 'OK',
      onPress: (password) =>
        console.log('OK Pressed, password: ' + password)
    }
  ],
  'secure-text'
);

أيضًا مثال مع الأزرار الافتراضية و ردّ نِداء مُخصّص:

AlertIOS.prompt(
  'Update username',
  null,
  (text) => console.log('Your username is ' + text),
  null,
  'default'
);

تعريفات الأنواع

AlertType

يُحدّد نوع زرّ التنبيه.

  • النوع: \$Enum

الثوابت:

القيمة الوصف
default التنبية الإفتراضي، لا يوجد حقل إدخال.
plain-text تنبه مع حقل إدخال سلسلة نصية عادية.
secure-text تنبيه مع حقل إدخال نص آمن.
login-password تنبيه تسجيل الدخول وكلمة مرور.

AlertButtonStyle

تُحدد أنماط زرّ التنبيه.

  • النوع: \$Enum

    الثوابت

القيمة الوصف
default زرّ التنبيه الإفتراضي.
cancel زرّ الإلغاء.
destructive زرّ الهدم.

ButtonsArray

مصفوفة يمثل كل عنصر فيها زرًا من الأزرار التي ستُعرض أسفل رسالة التنبيه.

  • النوع: مصفوفة.

الخاصيات

الاسم النوع الوصف
[text] سلسلة نصية (string) عنوان الزر.
[onPress] دالة (function) دالة تُستدعَى عند الضغط على الزر.
[style] AlertButtonStyle نمط الزر.

الثوابت:

القيمة الوصف
text عنوان الزر.
onPress دالة تُستدعَى عند الضغط على الزر.
style نمط الزر.

المصادر