الفرق بين المراجعتين لصفحة: «ReactNative/accessibilityinfo»

من موسوعة حسوب
لا ملخص تعديل
لا ملخص تعديل
سطر 70: سطر 70:
static isBoldTextEnabled()
static isBoldTextEnabled()
</syntaxhighlight>
</syntaxhighlight>
نظام iOS فقط. الاستعلام عمّا إذا كان نصٌّ غامقٌ ممكّنًا حاليًا. تُعيد [https://wiki.hsoub.com/JavaScript/Promise وعدًا] يُقرِّر (resolve) قيمة منطقية. تكون النتيجةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين النص الغامق، والقيمة ‎‎<code>false</code>‎‎ في غير ذلك.
'''نظام iOS فقط.''' الاستعلام عمّا إذا كان نصٌّ غامقٌ ممكّنًا حاليًا. تُعيد [https://wiki.hsoub.com/JavaScript/Promise وعدًا] يُقرِّر (resolve) قيمة منطقية. تكون النتيجةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين النص الغامق، والقيمة ‎‎<code>false</code>‎‎ في غير ذلك.
===‎‎<code>isGrayscaleEnabled()</code>‎‎===
===‎‎<code>isGrayscaleEnabled()</code>‎‎===
<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">
static isGrayscaleEnabled()
static isGrayscaleEnabled()
</syntaxhighlight>
</syntaxhighlight>
نظام iOS فقط. الاستعلام عمّا إذا كان التدرج الرمادي (grayscale) مُمكَّنًا حاليًا. تُعيد [https://wiki.hsoub.com/JavaScript/Promise وعدًا]  يُقرِّر (resolve) قيمة منطقية.تكون النتيجةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين التدرج الرمادي، والقيمة ‎‎<code>false</code>‎‎ في غير ذلك.
'''نظام iOS فقط.''' الاستعلام عمّا إذا كان التدرج الرمادي (grayscale) مُمكَّنًا حاليًا. تُعيد [https://wiki.hsoub.com/JavaScript/Promise وعدًا]  يُقرِّر (resolve) قيمة منطقية. تكون النتيجةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين التدرج الرمادي، والقيمة ‎‎<code>false</code>‎‎ في غير ذلك.
===‎‎<code>isInvertColorsEnabled()</code>‎‎===
===‎‎<code>isInvertColorsEnabled()</code>‎‎===
<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">
static isInvertColorsEnabled()
static isInvertColorsEnabled()
</syntaxhighlight>
</syntaxhighlight>
نظام iOS فقط. الاستعلام عمّا إذا كان قلب الألوان مُمكَّنًا حاليًا. تُعيد [https://wiki.hsoub.com/JavaScript/Promise وعدًا]  يُقرِّر (resolve) قيمة منطقية.تكون النتيجةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين قلب الألوان، والقيمة ‎‎<code>false</code>‎‎ في غير ذلك.
'''نظام iOS فقط.''' الاستعلام عمّا إذا كان قلب الألوان مُمكَّنًا حاليًا. تُعيد [https://wiki.hsoub.com/JavaScript/Promise وعدًا]  يُقرِّر (resolve) قيمة منطقية. تكون النتيجةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين قلب الألوان، والقيمة ‎‎<code>false</code>‎‎ في غير ذلك.


===‎‎<code>isReduceMotionEnabled()</code>‎‎===
===‎‎<code>isReduceMotionEnabled()</code>‎‎===
سطر 86: سطر 86:
static isReduceMotionEnabled()
static isReduceMotionEnabled()
</syntaxhighlight>
</syntaxhighlight>
الاستعلام عمّا إذا كان خيار تقليل الحركة مُمكَّنًا حاليًا. تُعيد [https://wiki.hsoub.com/JavaScript/Promise وعدًا]  يُقرِّر (resolve) قيمة منطقية.تكون النتيجةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين تقليل الحركة، والقيمة ‎‎<code>false</code>‎‎ في غير ذلك.
الاستعلام عمّا إذا كان خيار تقليل الحركة مُمكَّنًا حاليًا. تُعيد [https://wiki.hsoub.com/JavaScript/Promise وعدًا]  يُقرِّر (resolve) قيمة منطقية. تكون النتيجةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين تقليل الحركة، والقيمة ‎‎<code>false</code>‎‎ في غير ذلك.
===‎‎<code>isReduceTransparencyEnabled()</code>‎‎===
===‎‎<code>isReduceTransparencyEnabled()</code>‎‎===
<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">
static isReduceTransparencyEnabled()
static isReduceTransparencyEnabled()
</syntaxhighlight>
</syntaxhighlight>
نظام iOS فقط. الاستعلام عمّا إذا كان خيار تقليل الشفافية مُمكَّنًا حاليًا. تُعيد [https://wiki.hsoub.com/JavaScript/Promise وعدًا]  يُقرِّر (resolve) قيمة منطقية.تكون النتيجةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين تقليل الشفافية، والقيمة ‎‎<code>false</code>‎‎ في غير ذلك.
'''نظام iOS فقط.''' الاستعلام عمّا إذا كان خيار تقليل الشفافية مُمكَّنًا حاليًا. تُعيد [https://wiki.hsoub.com/JavaScript/Promise وعدًا]  يُقرِّر (resolve) قيمة منطقية. تكون النتيجةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين تقليل الشفافية، والقيمة ‎‎<code>false</code>‎‎ في غير ذلك.


===‎‎<code>isScreenReaderEnabled()</code>‎‎===
===‎‎<code>isScreenReaderEnabled()</code>‎‎===
سطر 97: سطر 97:
static isScreenReaderEnabled()
static isScreenReaderEnabled()
</syntaxhighlight>
</syntaxhighlight>
الاستعلام عمّا إذا كان قارئ شاشةٍ مُمكَّنًا حاليًا. تُعيد [https://wiki.hsoub.com/JavaScript/Promise وعدًا]  يُقرِّر (resolve) قيمة منطقية.تكون النتيجةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين قارئ الشاشة، والقيمة ‎‎<code>false</code>‎‎ في غير ذلك.
الاستعلام عمّا إذا كان قارئ شاشةٍ مُمكَّنًا حاليًا. تُعيد [https://wiki.hsoub.com/JavaScript/Promise وعدًا]  يُقرِّر (resolve) قيمة منطقية. تكون النتيجةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين قارئ الشاشة، والقيمة ‎‎<code>false</code>‎‎ في غير ذلك.
===‎‎<code>addEventListener()</code>‎‎===
===‎‎<code>addEventListener()</code>‎‎===
<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">
سطر 104: سطر 104:
أضف معالج أحداث. الأحداث المدعومة:
أضف معالج أحداث. الأحداث المدعومة:


* ‎‎<code>boldTextChanged</code>‎‎: حدث iOS فقط. يُطلَق عندما تتغير حالة تبديل النص الغامق (bold text toggle). تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين النص الغامق والقيمة ‎‎ ‎‎<code>false</code>‎‎ في غير ذلك.
* ‎‎<code>boldTextChanged</code>‎‎: '''حدث iOS فقط.''' يُطلَق عندما تتغير حالة تبديل النص الغامق (bold text toggle). تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين النص الغامق والقيمة ‎‎ ‎‎<code>false</code>‎‎ في غير ذلك.
* ‎‎<code>grayscaleChanged</code>‎‎: حدث iOS فقط. يُطلَق عندما تتغير حالة تبديل التدرّج الرمادي. تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين التدرّج الرمادي والقيمة ‎‎ ‎‎<code>false</code>‎‎ في غير ذلك.
* ‎‎<code>grayscaleChanged</code>‎‎: '''حدث iOS فقط.''' يُطلَق عندما تتغير حالة تبديل التدرّج الرمادي. تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين التدرّج الرمادي والقيمة ‎‎ ‎‎<code>false</code>‎‎ في غير ذلك.
* ‎‎<code>invertColorsChanged</code>‎‎: حدث iOS فقط. يُطلَق عندما تتغير حالة تبديل قلب الألوان. تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين قلب الألوان والقيمة ‎‎ ‎‎<code>false</code>‎‎ في غير ذلك.
* ‎‎<code>invertColorsChanged</code>‎‎: '''حدث iOS فقط.''' يُطلَق عندما تتغير حالة تبديل قلب الألوان. تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين قلب الألوان والقيمة ‎‎ ‎‎<code>false</code>‎‎ في غير ذلك.
* ‎‎<code>reduceMotionChanged</code>‎‎: يُطلَق عندما تتغير حالة تبديل تقليل الحركة،  تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين تقليل الحركة (أو عندما يكون "مقياس الحركة الانتقالية (Transition Animation Scale)" في "خيارات المطور" مضبوطًا على "Animation off") والقيمة ‎‎ ‎‎<code>false</code>‎‎ في غير ذلك.
* ‎‎<code>reduceMotionChanged</code>‎‎: يُطلَق عندما تتغير حالة تبديل تقليل الحركة،  تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين تقليل الحركة (أو عندما يكون "مقياس الحركة الانتقالية (Transition Animation Scale)" في "خيارات المطور" مضبوطًا على "Animation off") والقيمة ‎‎ ‎‎<code>false</code>‎‎ في غير ذلك.
* ‎‎<code>screenReaderChanged</code>‎‎: يُطلَق عندما تتغير حالة تبديل قارئ الشاشة. تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين قارئ الشاشة والقيمة ‎‎ ‎‎<code>false</code>‎‎ في غير ذلك.
* ‎‎<code>screenReaderChanged</code>‎‎: يُطلَق عندما تتغير حالة تبديل قارئ الشاشة. تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين قارئ الشاشة والقيمة ‎‎ ‎‎<code>false</code>‎‎ في غير ذلك.
* ‎‎<code>reduceTransparencyChanged</code>‎‎: حدث iOS فقط. يُطلَق عندما تتغير حالة تبديل  تقليل الشفافية. تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين تقليل الشفافية والقيمة ‎‎ ‎‎<code>false</code>‎‎ في غير ذلك.
* ‎‎<code>reduceTransparencyChanged</code>‎‎: '''حدث iOS فقط.''' يُطلَق عندما تتغير حالة تبديل  تقليل الشفافية. تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎<code>true</code>‎‎ عند تمكين تقليل الشفافية والقيمة ‎‎ ‎‎<code>false</code>‎‎ في غير ذلك.
* ‎‎<code>announcementFinished</code>‎‎: حدث iOS فقط. يُطلَق عندما ينتهي قارئ الشاشة من إصدار إعلان. المعامل المُمرَّر إلى معالج الأحداث هو قاموس يحتوي على المفاتيح التاليّة:
* ‎‎<code>announcementFinished</code>‎‎: '''حدث iOS فقط.''' يُطلَق عندما ينتهي قارئ الشاشة من إصدار إعلان. المعامل المُمرَّر إلى معالج الأحداث هو قاموس يحتوي على المفاتيح التاليّة:
** ‎‎<code>announcement</code>‎‎: السلسلة النصيّة التي أعلنها قارئ الشاشة.
** ‎‎<code>announcement</code>‎‎: السلسلة النصيّة التي أعلنها قارئ الشاشة.
** ‎‎<code>success</code>‎‎: قيمة منطقيّة تُشير إلى ما إذا تمّ الإعلان بنجاح.
** ‎‎<code>success</code>‎‎: قيمة منطقيّة تُشير إلى ما إذا تمّ الإعلان بنجاح.

مراجعة 18:42، 13 ديسمبر 2019

من المفيد في بعض الأحيان معرفة ما إذا كان الجهاز يحتوي على قارئ شاشةٍ نشطٍ حاليًا أو لا، وقد صُمِّمَت واجهة برمجة التطبيقات ‎‎AccessibilityInfo‎‎ لهذا الغرض. يمكنك استخدامها للاستعلام عن الحالة الحالية لقارئ الشاشة وكذلك للتسجيل ليتم إعلامك عند تغيّر حالة قارئ الشاشة.

ما يلي مثال صغير يوضح كيفية استخدام ‎‎AccessibilityInfo‎‎:

class AccessibilityStatusExample extends React.Component {
  state = {
    reduceMotionEnabled: false,
    screenReaderEnabled: false,
  };

  componentDidMount() {
    AccessibilityInfo.addEventListener(
      'reduceMotionChanged',
      this._handleReduceMotionToggled,
    );
    AccessibilityInfo.addEventListener(
      'screenReaderChanged',
      this._handleScreenReaderToggled,
    );

    AccessibilityInfo.isReduceMotionEnabled().then((reduceMotionEnabled) => {
      this.setState({reduceMotionEnabled});
    });
    AccessibilityInfo.isScreenReaderEnabled().then((screenReaderEnabled) => {
      this.setState({screenReaderEnabled});
    });
  }

  componentWillUnmount() {
    AccessibilityInfo.removeEventListener(
      'reduceMotionChanged',
      this._handleReduceMotionToggled,
    );

    AccessibilityInfo.removeEventListener(
      'screenReaderChanged',
      this._handleScreenReaderToggled,
    );
  }

  _handleReduceMotionToggled = (reduceMotionEnabled) => {
    this.setState({reduceMotionEnabled});
  };

  _handleScreenReaderToggled = (screenReaderEnabled) => {
    this.setState({screenReaderEnabled});
  };

  render() {
    return (
      <View>
        <Text>
          The reduce motion is{' '}
          {this.state.reduceMotionEnabled ? 'enabled' : 'disabled'}.
        </Text>
        <Text>
          The screen reader is{' '}
          {this.state.screenReaderEnabled ? 'enabled' : 'disabled'}.
        </Text>
      </View>
    );
  }
}

التوابع

‎‎isBoldTextEnabled()‎‎

static isBoldTextEnabled()

نظام iOS فقط. الاستعلام عمّا إذا كان نصٌّ غامقٌ ممكّنًا حاليًا. تُعيد وعدًا يُقرِّر (resolve) قيمة منطقية. تكون النتيجةُ القيمةَ ‎‎true‎‎ عند تمكين النص الغامق، والقيمة ‎‎false‎‎ في غير ذلك.

‎‎isGrayscaleEnabled()‎‎

static isGrayscaleEnabled()

نظام iOS فقط. الاستعلام عمّا إذا كان التدرج الرمادي (grayscale) مُمكَّنًا حاليًا. تُعيد وعدًا يُقرِّر (resolve) قيمة منطقية. تكون النتيجةُ القيمةَ ‎‎true‎‎ عند تمكين التدرج الرمادي، والقيمة ‎‎false‎‎ في غير ذلك.

‎‎isInvertColorsEnabled()‎‎

static isInvertColorsEnabled()

نظام iOS فقط. الاستعلام عمّا إذا كان قلب الألوان مُمكَّنًا حاليًا. تُعيد وعدًا يُقرِّر (resolve) قيمة منطقية. تكون النتيجةُ القيمةَ ‎‎true‎‎ عند تمكين قلب الألوان، والقيمة ‎‎false‎‎ في غير ذلك.

‎‎isReduceMotionEnabled()‎‎

static isReduceMotionEnabled()

الاستعلام عمّا إذا كان خيار تقليل الحركة مُمكَّنًا حاليًا. تُعيد وعدًا يُقرِّر (resolve) قيمة منطقية. تكون النتيجةُ القيمةَ ‎‎true‎‎ عند تمكين تقليل الحركة، والقيمة ‎‎false‎‎ في غير ذلك.

‎‎isReduceTransparencyEnabled()‎‎

static isReduceTransparencyEnabled()

نظام iOS فقط. الاستعلام عمّا إذا كان خيار تقليل الشفافية مُمكَّنًا حاليًا. تُعيد وعدًا يُقرِّر (resolve) قيمة منطقية. تكون النتيجةُ القيمةَ ‎‎true‎‎ عند تمكين تقليل الشفافية، والقيمة ‎‎false‎‎ في غير ذلك.

‎‎isScreenReaderEnabled()‎‎

static isScreenReaderEnabled()

الاستعلام عمّا إذا كان قارئ شاشةٍ مُمكَّنًا حاليًا. تُعيد وعدًا يُقرِّر (resolve) قيمة منطقية. تكون النتيجةُ القيمةَ ‎‎true‎‎ عند تمكين قارئ الشاشة، والقيمة ‎‎false‎‎ في غير ذلك.

‎‎addEventListener()‎‎

static addEventListener(eventName, handler)

أضف معالج أحداث. الأحداث المدعومة:

  • ‎‎boldTextChanged‎‎: حدث iOS فقط. يُطلَق عندما تتغير حالة تبديل النص الغامق (bold text toggle). تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎true‎‎ عند تمكين النص الغامق والقيمة ‎‎ ‎‎false‎‎ في غير ذلك.
  • ‎‎grayscaleChanged‎‎: حدث iOS فقط. يُطلَق عندما تتغير حالة تبديل التدرّج الرمادي. تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎true‎‎ عند تمكين التدرّج الرمادي والقيمة ‎‎ ‎‎false‎‎ في غير ذلك.
  • ‎‎invertColorsChanged‎‎: حدث iOS فقط. يُطلَق عندما تتغير حالة تبديل قلب الألوان. تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎true‎‎ عند تمكين قلب الألوان والقيمة ‎‎ ‎‎false‎‎ في غير ذلك.
  • ‎‎reduceMotionChanged‎‎: يُطلَق عندما تتغير حالة تبديل تقليل الحركة، تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎true‎‎ عند تمكين تقليل الحركة (أو عندما يكون "مقياس الحركة الانتقالية (Transition Animation Scale)" في "خيارات المطور" مضبوطًا على "Animation off") والقيمة ‎‎ ‎‎false‎‎ في غير ذلك.
  • ‎‎screenReaderChanged‎‎: يُطلَق عندما تتغير حالة تبديل قارئ الشاشة. تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎true‎‎ عند تمكين قارئ الشاشة والقيمة ‎‎ ‎‎false‎‎ في غير ذلك.
  • ‎‎reduceTransparencyChanged‎‎: حدث iOS فقط. يُطلَق عندما تتغير حالة تبديل تقليل الشفافية. تُمرَّر قيمةٌ منطقيّة إلى معالج الأحداث كمعامل. تكون القيمة المنطقيّةُ القيمةَ ‎‎true‎‎ عند تمكين تقليل الشفافية والقيمة ‎‎ ‎‎false‎‎ في غير ذلك.
  • ‎‎announcementFinished‎‎: حدث iOS فقط. يُطلَق عندما ينتهي قارئ الشاشة من إصدار إعلان. المعامل المُمرَّر إلى معالج الأحداث هو قاموس يحتوي على المفاتيح التاليّة:
    • ‎‎announcement‎‎: السلسلة النصيّة التي أعلنها قارئ الشاشة.
    • ‎‎success‎‎: قيمة منطقيّة تُشير إلى ما إذا تمّ الإعلان بنجاح.

‎‎setAccessibilityFocus()‎‎

static setAccessibilityFocus(reactTag)

اضبط تركيز إمكانية الوصول على مكوّن React. على Android، هذا يعادل ‎‎UIManager.sendAccessibilityEvent(reactTag, UIManager.AccessibilityEventTypes.typeViewFocused);‎‎.

‎‎announceForAccessibility()‎‎

static announceForAccessibility(announcement)

اكتب سلسلة نصيّةً ليُعلِنَها قارئ الشاشة.

‎‎removeEventListener()‎‎

static removeEventListener(eventName, handler)

إزالة معالج أحداثٍ.

مصادر