تصميم تجربة المستخدم باللمس

إنّ تعيين الثوابت في HAL-API الذي تم تقديمه في الخطوة 2 من قائمة التحقّق من أدوات اللمس يستند إلى مبادئ تصميم تجربة المستخدم التي يُنصح بها بشدة. تحدِّد مبادئ تصميم تجربة المستخدم أسس كيفية استخدام واجهات برمجة التطبيقات الخاصة بحسِّ اللمس في Android وحالات استخدامها وأنواعها. اطّلِع على مقالة اللمس المتقدّم: حالات استخدام واجهات برمجة التطبيقات الجديدة لللمس وكيفية استخدامها لمعرفة المزيد عن هذه المبادئ الأساسية.

الربط الثابت

الشكل 1: تعيين ثابت HAL-API: نموذج منفصل

اختيار التأثيرات اللمسية

حسب قوة اللمس (VibrationEffect)

يُعدّ EFFECT_CLICK أفضل مكان للبدء عند تحديد قوة اللمس المفضّلة (VibrationEffect): فهو متوسّط بين قوة اللمس "الخفيفة" لقيمة EFFECT_TICK وقوة اللمس "الثقيلة" لقيمة EFFECT_HEAVY_CLICK. عند البدء برمز EFFECT_CLICK، يمكنك زيادة الطاقة المفاهيمية أو خفضها من خلال إضافة قوة باستخدام EFFECT_HEAVY_CLICK أو خفض القوة باستخدام EFFECT_TICK. يُرجى العِلم أنّ الشعار EFFECT_DOUBLE_CLICK يقدّم أعلى طاقة مفهومية لأنّه يتم تكراره.

قوة اللمس

الشكل 2: إعدادات قوة اللمس

حسب أحداث الإدخال وعناصر واجهة المستخدم (HapticFeedbackConstants)

إذا كان هدفك مرتبطًا بأحداث إدخال معيّنة (مثل الضغط مع الاستمرار أو اللمس السريع) أو عناصر واجهة المستخدم (مثل لوحة المفاتيح)، ابحث عن الثوابت الحسية المحدّدة مسبقًا في HapticFeedbackConstants. يشير اسم كلّ ثابت إلى حالات استخدام معيّنة، مثل KEYBOARD_PRESS أو LONG_PRESS.

محاكاة أحداث الضغط على الأزرار في الواقع

يمكن أن تحاكي الملاحظات اللمسية لأحداث الإدخال (الأزرار الافتراضية السهلة الاستخدام) الضغط على الأزرار باستخدام عناصر مادية (مثل الأزرار الصلبة الميكانيكية).

حدث الإدخال: مسار التفاعل بين شخصين

تم تصميم حدث النقر لمحاكاة سلوك زر ميكانيكي، يتم الضغط عليه ثم إفلاته. إنّ الطاقة التي يشعر بها المستخدم من الدافع الميكانيكي عند الضغط على زر أعلى من تلك التي يشعر بها عند تحرير الزر. لذلك، يكون التأثير الحسّي الناتج عن الضغط على الأزرار أقوى من التأثير الحسّي الناتج عن رفع إصبعك عن الأزرار.

اللمسات الحسية للضغط على الحدث وإفلاته

الشكل 3: التأثيرات اللمسية حسب حدث الإدخال الثنائي

قوة اللمس: سهولة الضغط على الزر

ترتبط أحداث الإدخال التي تتضمن تفاعلًا أقصر وأكثر رقةً بلمس أرق. إنّ أحداث الإدخال التي تتضمن تفاعلًا أطول وأعمق تكون مرتبطة بتأثيرات haptics الأقوى.

اللمس في ميزة "الضغط للوصول إلى المحتوى"

الشكل 4: التأثيرات اللمسية حسب إمكانيات الاستخدام

محاكاة النسيج الافتراضي في حدث إدخال الإيماءات

يمكن محاذاة الإدخال المستنِد إلى الإيماءات (مثل التمرير السريع أو التمرير) مع ملف تعريف افتراضي للملمس أثناء تحريك الإصبع على الشاشة مع واجهات المستخدم المرئية، على سبيل المثال، إنشاء ملاحظات لمس متكررة أثناء تحريك إصبع حول واجهة المستخدم للساعة مع عناصر واجهة المستخدم الافتراضية لعلامة الاختيار.

من المفترض أن تتكرّر تأثيرات الملمس اللمسي الافتراضي. يؤدي ذلك غالبًا إلى جعل الطاقة المُلاحظة أعلى من السعة (عند استدعاء التأثير بدون تكرار أو مرة واحدة فقط). لهذا السبب، يجب أن تكون العوامل الثابتة لللمس التي تم تصميمها للاستخدام مع الملمس اللمسي الافتراضي (مثل CLOCK_TICK أو TEXT_HANDLE_MOVE) خفيفة لتوفير إحساس بالحركة من خلال إشارات متكررة.

النسيج الافتراضي

الشكل 5: تأثيرات لمسية لمحاكاة الملمس الافتراضي

تضمين المشاعر

لتضمين انطباع إيجابي أو سلبي في التأثيرات اللمسية، طبِّق إحساسًا أقوى على الانطباع السلبي لجذب انتباه المستخدم.

الانطباع باللمس

الشكل 6: التأثيرات اللمسية مع المشاعر

تجنُّب الضوضاء المرئية الناتجة عن الاهتزاز لفترة طويلة

لتجنّب الضوضاء المرئية الناتجة عن الاهتزاز الطويل في اللمسات الحسية التي تجذب الانتباه، يمكنك تسريع التأثير بسلاسة لإنشاء تأثير متزايد. ويمكنك إجراء ذلك باستخدام createWaveform(long[] timings, int[] amplitudes, int repeat).

اهتزاز طويل

الشكل 7: تأثير زيادة الاهتزاز تدريجيًا