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

إنّ عملية ربط ثوابت 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. تأثير زيادة الاهتزاز تدريجيًا