الفرق بين المراجعتين لصفحة: «ReactNative/touchablewithoutfeedback»
سطر 109: | سطر 109: | ||
|} | |} | ||
===<code>accessibilityActions</code>=== | ===<code>accessibilityActions</code>=== | ||
تسمح إجراءات إمكانية الوصول (Accessibility actions) لتقنيّة مساعدة باستدعاء إجراءات | تسمح إجراءات إمكانية الوصول (Accessibility actions) لتقنيّة مساعدة باستدعاء إجراءات مكونٍ برمجيًا. يجب أن تحتوي الخاصية <code>accessibilityActions</code> على قائمة كائنات إجراءات (action objects). يجب أن يحتوي كل كائن إجراء على اسم الحقل وعلى ملصق (label). | ||
انظر [https://wiki.hsoub.com/ReactNative/accessibility دليل إمكانية الوصول] لمزيد من المعلومات. | انظر [https://wiki.hsoub.com/ReactNative/accessibility دليل إمكانية الوصول] لمزيد من المعلومات. | ||
سطر 119: | سطر 119: | ||
|لا | |لا | ||
|} | |} | ||
===<code>onAccessibilityAction</code>=== | ===<code>onAccessibilityAction</code>=== | ||
دالةٌ تُستدعى عند قيام المستخدم بتنفيذ إجراءات إمكانية الوصول. معامل هذه الدالة الوحيد هو حدثٌ يحتوي على اسم الإجراء المراد تنفيذه. | دالةٌ تُستدعى عند قيام المستخدم بتنفيذ إجراءات إمكانية الوصول. معامل هذه الدالة الوحيد هو حدثٌ يحتوي على اسم الإجراء المراد تنفيذه. |
مراجعة 19:34، 10 ديسمبر 2019
لا تستخدم هذا المكون إلا لِسَببٍ وجيه. يجب على جميع العناصر التي تستجيب للضغط أن تُظهِر علامةً مرئيةً تُعلم المستخدم بأنّها قد لُمِسَت، وهذا المكون لا يظهر أي شيء من هذا القبيل، بل يظهر وكأنّه لم يُضغَط عليه.
يدعم TouchableWithoutFeedback
مكوّنًا ابنًا واحدًا فقط. إذا كنت تريد العديد من المكونات الأبناء، فقم بتغليفها داخل مُكوّنِView
. والأهم من ذلك، اعلم أنّ المكوِّن TouchableWithoutFeedback
يعمل عن طريق استنساخ مكوّنه الابن وتطبيق خاصيَّات المستجيب (responder) عليه. ولذلك من الضروري أن تُمرِّرَ أي مكوّنات وسيطة (intermediary components) هذه الخاصيات إلى مكوّن React Native الضِّمنيّ (underlying component).
مثال
function MyComponent(props) {
return (
<View {...props} style={{flex: 1, backgroundColor: '#fff'}}>
<Text>My Component</Text>
</View>
);
}
<TouchableWithoutFeedback onPress={() => alert('Pressed!')}>
<MyComponent />
</TouchableWithoutFeedback>;
الخاصيات
accessibilityIgnoresInvertColors
النوع | مطلوب |
---|---|
قيمة منطقيّة | لا |
accessible
عندما تكون ذات القيمة true
، فذلك يشير إلى أن العرض عنصرُ إمكانية وصول (accessibility element). افتراضيًّا، يمكن الوصول إلى جميع العناصر القابلة للّمس.
النوع | مطلوب |
---|---|
قيمة منطقيّة | لا |
accessibilityLabel
يستبدِل النص الذي يقرأه قارئ الشاشة عندما يتفاعل المستخدم مع العنصر. افتراضيًا، يُنشأ الملصق (label) عن طريق العبور عبر جميع المكوّنات الأبناء وتجميع كافة العقد النصية مفصولةً بمسافة.
النوع | مطلوب |
---|---|
سلسلة نصيّة | لا |
accessibilityHint
يُساعد تلميح إمكانية الوصول (accessibility hint) المستخدمينَ على فهم ما سيحدث عندما يقومون بإجراءٍ على عنصر إمكانية الوصول عندما لا تكون النتيجة واضحةً من مُلصَق إمكانية الوصول.
النوع | مطلوب |
---|---|
سلسلة نصيّة | لا |
accessibilityRole
تقوم الخاصيّة accessibilityRole
بتوصيل الغرض من المكون (أي دَوره) إلى مُستخدمِ تقنيةٍ مساعدة (assistive technology).
يُمكن للخاصيّة accessibilityRole
أن تحمل أحد القيم التالية:
-
'none'
- تُستخدَم عندما لا يكون للعنصر أي دور. -
'button'
- تستخدم عندما تجب معاملة العنصر كزر. -
'link'
- تستخدم عندما تجب معاملة العنصر كرابط. -
'search'
- تستخدم عندما تجب معاملة عنصر حقل النص كعنصر بحث كذلك. -
'image'
- تستخدم عندما تجب معاملة العنصر كصورة. يمكن دمجها مع زرٍ أو رابطٍ مثلا. -
'keyboardkey'
- تستخدم عندما يتصرَّف العنصرُ كمفتاح لوحة مفاتيح. -
'text'
- تستخدم عندما تجب معاملة العنصر كنص ثابت لا يمكن تغييره. -
'adjustable'
- تستخدم عندما يمكن "تعديل" العنصر (مثل شريط تمريرٍ [slider]). -
'imagebutton'
- تستخدم عندما تجب معاملة العنصر كزرٍ مع كونِه صورة في نفس الوقت. -
'header'
- تستخدم عندما يتصرف عنصرٌ كترويسةٍ (header) لقسمِ محتوى (كعنوان شريط التنقل). -
'summary'
- تستخدم عندما يمكن استخدام عنصر ما لتقديم ملخص سريع للظروف الحالية في التطبيق عند بدء تشغيل التطبيق لأول مرة. -
'alert'
- تستخدم عندما يحتوي عنصر على نص مهم لعرضه للمستخدم. -
'checkbox'
- تستخدم عندما يمثل عنصر مربعًا يمكن تحديده أو إلغاء تحديده أو في حالة تحديد مختلطة. -
'combobox'
- تستخدم عندما يمثل عنصر مربع تحرير وسرد (combo box)، مما يسمح للمستخدم بالاختيار من بين عدة خيارات. -
'menu'
- تستخدم عندما يكون المكون قائمةً من الخيارات. -
'menubar'
- تستخدم عندما يكون المكون عبارة عن حاوية متعددة القوائم. -
'menuitem'
- تستخدم لتمثيل عنصرٍ داخل قائمة. -
'progressbar'
- تستخدم لتمثيل مكون يشير إلى تقدم المهمة (شريط تقدم). -
'radio'
- تستخدم لتمثيل زر اختيار. -
'radiogroup'
- تستخدم لتمثيل مجموعة من أزرار الاختيار. -
'scrollbar'
- تستخدم لتمثيل شريط تمرير. -
'spinbutton'
- تستخدم لتمثيل زر يفتح قائمة من الخيارات. -
'switch'
- تستخدم لتمثيل مُحوِّلة يمكن تشغيلها وإيقاف تشغيلها. -
'tab'
- تستخدم لتمثيل علامة تبويب. -
'tablist'
- تستخدم لتمثيل قائمة من علامات التبويب. -
'timer'
- تستخدم لتمثيل مؤقت. -
'toolbar'
- تستخدم لتمثيل شريط أدوات (حاوية من أزرارٍ ومكوّنات إجراءات).
النوع | مطلوب |
---|---|
سلسلة نصيّة | لا |
accessibilityState
تصف الحالة الحالية لمكوّنٍ ما لمستخدمِ تقنيةٍ مساعدة.
انظر دليل إمكانية الوصول لمزيد من المعلومات.
النوع | مطلوب |
---|---|
object: {disabled: bool, selected: bool, checked: bool or 'mixed', busy: bool, expanded: bool}
|
لا |
accessibilityActions
تسمح إجراءات إمكانية الوصول (Accessibility actions) لتقنيّة مساعدة باستدعاء إجراءات مكونٍ برمجيًا. يجب أن تحتوي الخاصية accessibilityActions
على قائمة كائنات إجراءات (action objects). يجب أن يحتوي كل كائن إجراء على اسم الحقل وعلى ملصق (label).
انظر دليل إمكانية الوصول لمزيد من المعلومات.
النوع | مطلوب |
---|---|
مصفوفة | لا |
onAccessibilityAction
دالةٌ تُستدعى عند قيام المستخدم بتنفيذ إجراءات إمكانية الوصول. معامل هذه الدالة الوحيد هو حدثٌ يحتوي على اسم الإجراء المراد تنفيذه.
انظر دليل إمكانية الوصول لمزيد من المعلومات.
النوع | مطلوب |
---|---|
دالة | لا |
delayLongPress
التأخير بالمللي ثانية، منذ اللحظة التي تستدعى فيها دالّةُ onPressIn
، قبل استدعاء onLongPress
.
النوع | مطلوب |
---|---|
عدد | لا |
delayPressIn
التأخير بالمللي ثانية، من بداية اللمس، قبل أن تُستدعى الدالة onPressIn
.
النوع | مطلوب |
---|---|
عدد | لا |
delayPressOut
التأخير بالمللي ثانية، من تحرير اللمس، قبل استدعاء onPressOut
.
النوع | مطلوب |
---|---|
عدد | لا |
disabled
عندما تكون ذات القيمة true
، تُعطَّل جميع التفاعلات مع هذا المكون.
النوع | مطلوب |
---|---|
قيمة منطقيّة | لا |
hitSlop
تُحدد هذه الخاصيّة المدى الذي يمكن أن يبدأ فيه لمس الزّر. يُضاف هذا إلى الخاصيّة pressRetentionOffset
عند نقل اللمسة بعيدًا عن الزر.
ملاحظة: لا تمتد منطقة اللمس أبدًا بعد حدود العرض الأب، ودائمًا ما يأخذ مؤشر Z-index الخاص بالعروض للمكوّنات الإخوة (المجاورة) الأولويّةَ إذا وقعت اللمسة على عرضين متداخلين.
النوع | مطلوب |
---|---|
object: {top: number, left: number, bottom: number, right: number}
|
لا |
onBlur
تُستدعى عندما يفقد العنصر التركيز.
النوع | مطلوب |
---|---|
دالة | لا |
onFocus
تُستدعى عندما يستقبل العنصر التركيز.
النوع | مطلوب |
---|---|
دالة | لا |
onLayout
تُستدعى عند التركيب وتغيُّر التخطيط. {nativeEvent: {layout: {x, y, width, height}}}
.
النوع | مطلوب |
---|---|
دالة | لا |
onLongPress
النوع | مطلوب |
---|---|
دالة | لا |
onPress
تُستدعى عندما يتم تحرير اللمس، ولكنها لا تُستدعى إذا أُلغيَ اللمس (بواسطة تمريرٍ يأخذ قفل المستجيب (responder lock) مثلًا).
النوع | مطلوب |
---|---|
دالة | لا |
onPressIn
تُستدعى بمجرد الضغط على العنصر القابل للّمس وتُستدعى حتى قبل دالة onPress
. قد يكون هذا مفيدًا عند إجراء طلبات الشبكة.
النوع | مطلوب |
---|---|
دالة | لا |
onPressOut
تُستدعى بمجرد تحرير اللمس حتى قبل دالة onPress
.
النوع | مطلوب |
---|---|
دالة | لا |
pressRetentionOffset
عند تعطيل عرض التمرير (scroll view)، تُحدد هذه الخاصيّة مدى المسافة التي يمكن أن تتحرك بها اللمسة بعيدًا عن الزر قبل إلغاء تنشيطه. بمجرد إلغاء تنشيط الزر، حاول تحريكه للخلف وسترى أن الزر قد نُشِّط مرة أخرى! حركه للخلف وللأمام عدة مرات أثناء تعطيل عرض التمرير. تأكد من تمرير قيمة ثابتةٍ لتقليل تخصيصات الذاكرة.
النوع | مطلوب |
---|---|
object: {top: number, left: number, bottom: number, right: number}
|
لا |
nativeID
النوع | مطلوب |
---|---|
سلسلة نصيّة | لا |
testID
تُستخدم لتحديد موقع هذا العرض في الاختبارات الشاملة (end-to-end tests).
النوع | مطلوب |
---|---|
سلسلة نصيّة | لا |
touchSoundDisabled
إذا كان ذات القيمة true
، فلن يُشغَّل صوت النظام عند اللمس.
النوع | مطلوب | المنصة |
---|---|---|
قيمة منطقيّة | لا | Android |
تعريفات الأنواع
event
النوع: كائن.