45 lines
2.4 KiB
Markdown
45 lines
2.4 KiB
Markdown
|
---
|
||
|
title: Touchables
|
||
|
localeTitle: ملموس
|
||
|
---
|
||
|
## React Native - Touchables
|
||
|
|
||
|
تدور بعض الميزات الرئيسية للأجهزة المحمولة حول تفاعلات اللمس للمستخدم. يمكن أن يعمل تطبيق الجوّال على التعامل مع هذه التفاعلات ويستجيب لها أو يؤدي إلى كسر تجربة المستخدم.
|
||
|
|
||
|
React Native ships مع عنصر `Button` يعمل مع العديد من تفاعلات `onPress` القياسية. بشكل افتراضي ، فإنه يعطي ملاحظات المستخدم عن طريق تغيير العتامة لإظهار الضغط على الزر. الاستعمال:
|
||
|
|
||
|
`<Button onPress={handlePress} title="Submit" />
|
||
|
`
|
||
|
|
||
|
لحالات الاستخدام الأكثر تعقيدًا ، قام React Native بإنشاء واجهات برمجة التطبيقات للتعامل مع التفاعلات الصحفية المسماة `Touchables` .
|
||
|
|
||
|
`TouchableHighlight
|
||
|
TouchableNativeFeedback
|
||
|
TouchableOpacity
|
||
|
TouchableWithoutFeedback
|
||
|
`
|
||
|
|
||
|
يمكن تصميم واستخدام كل من هذه المكونات القابلة للتشابك مع مكتبة ، مثل `Animated` المدمجة ، مما يتيح لك إنشاء أنواع خاصة بك من تعليقات المستخدمين المخصصة.
|
||
|
|
||
|
بعض الأمثلة على استخدام هذه المكونات:
|
||
|
|
||
|
`// with images
|
||
|
<TouchableHighlight onPress={this.handlePress}>
|
||
|
<Image
|
||
|
style={styles.button}
|
||
|
source={require('./logo.png')}
|
||
|
/>
|
||
|
</TouchableHighlight>
|
||
|
|
||
|
// with text
|
||
|
<TouchableHighlight onPress={this.handlePress}>
|
||
|
<Text>Hello</Text>
|
||
|
</TouchableHighlight>
|
||
|
`
|
||
|
|
||
|
يمكنك التعامل مع أنواع مختلفة من الضغط على الزر أيضًا. بشكل افتراضي ، يتم تكوين الأزرار و touchables للتعامل مع الصنابير العادية ، ولكن يمكنك أيضا أن تشير إلى وظيفة لاستدعاء اضغط مع الاستمرار على التفاعلات على سبيل المثال.
|
||
|
|
||
|
`<TouchableHighlight onPress={this.handlePress} onLongPress={this.handleLongPress}>
|
||
|
`
|
||
|
|
||
|
للاطلاع على جميع الأدوات المتوفرة المتوفرة وكيفية عمل هذه المكونات ، يمكنك الاطلاع على [شفرة مصدر جافا سكريبت لـ Touchables هنا](https://github.com/facebook/react-native/tree/master/Libraries/Components/Touchable) .
|