رموز مؤشّر الماوس

يصل مستخدمو Android إلى تطبيقك من جميع أنواع أشكال الأجهزة، أي الهواتف والأجهزة اللوحية والهواتف القابلة للطي وأجهزة Chromebook. عند التفاعل مع تطبيقك، خاصةً على الشاشات الكبيرة، قد يستخدم المستخدمون أيضًا نوعًا من أجهزة التأشير، مثل الماوس بثلاثة أزرار. تتيح تطبيقات Android إمكانية تطبيق أنماط مختلفة على مؤشر الماوس لمساعدة المستخدمين في الحصول على مؤشر مرئي يشير إلى إمكانية التفاعل مع عنصر ما.

استخدام المؤشرات التلقائية للنظام

يعتاد المستخدمون على طرق مختلفة للتفاعل مع أنواع مختلفة من العناصر على الأجهزة ذات الشاشات الكبيرة. يوفّر نظام التشغيل Android للمطوّرين بعضًا من رموز المؤشر الأكثر شيوعًا التي يعرفها المستخدمون. يمكنك إضافة رموز المؤشر التلقائية هذه باستخدام بضعة أسطر من الرمز البرمجي. لِنلقِ نظرة على مقتطف Kotlin التالي:

myView.setOnHoverListener { view, _ ->
      view.pointerIcon =
         PointerIcon.getSystemIcon(applicationContext, PointerIcon.TYPE_HAND)
      false // Listener did not consume the event.
}

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

تستمع setOnHoverListener إلى الوقت الذي يدخل فيه المؤشر إلى حالة التمرير فوق العنصر، ثم تتخذ إجراءً بشأن هذا الحدث. داخل أداة معالجة الحدث، يتم استدعاء view.pointerIcon لضبط رمز المؤشر لهذا العرض المحدّد. يتم استخدام رمز نظام حالي لضبط رمز المؤشر.

تتضمّن Android العديد من رموز النظام، ويمكنك الاطّلاع على القائمة الكاملة في أسفل هذه الصفحة. تم استخدام الرمز TYPE_HAND الذي يعرض يدًا مغلقة مع تمديد إصبع السبابة.

استخدام مؤشر خاص بك

// Loading a bitmap to use as a pointer icon
    BitmapFactory.decodeResource(
        this.resources,
        R.drawable.dollar_sign
    ), CURSOR_WIDTH, CURSOR_HEIGHT, false
)

// Creating the pointer icon and sending clicks from the center of the mouse icon
PointerIcon.create(dollarBitmap, (CURSOR_WIDTH/2).toFloat(), (CURSOR_HEIGHT/2).toFloat())

ملاحظة: يعتمد موقع النقطة الفعّالة على حالة الاستخدام. على سبيل المثال، سيضبط تطبيق الرسم نقطة الاتصال لتكون طرف القلم أو فرشاة الرسم.

أمثلة

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

  • السحب والإفلات: إذا كان تطبيقك يتيح السحب من تطبيق آخر والإفلات في تطبيقك، يمكنك تنفيذ الرمز TYPE_NO_DROP. سيؤدي ذلك إلى تقديم إشارة مرئية بأنّ تطبيقك لا يتوافق مع نوع MIME الذي تتم محاولة إسقاطه في تطبيقك.
  • التخطيط: إذا كان لديك تطبيق تخطيط وتريد أن توضّح للمستخدمين أنّه يمكنهم تحريك الخريطة، يمكنك توفير خيار عرض الرمز TYPE_GRAB عند تمرير المؤشر فوق الخريطة. عندما ينقر المستخدم، يمكنك تغيير الرمز إلى يد ممسكة لإظهار أنّه يحرّك الخريطة.
  • تعديل الصور: يفضّل المستخدمون الذين يعدّلون الصور استخدام عناصر تحكّم تتيح لهم اختيار عدسة مكبّرة لتكبير الصورة. يمكنك تغيير المؤشر إلى عدسة مكبّرة باستخدام الرمز TYPE_ZOOM_IN عند اختيار وضع التكبير.
  • والعديد من الفرص الأخرى

ملاحظة: للاطّلاع على تغييرات مختلفة في المؤشر أثناء التنفيذ، يمكنك الاطّلاع على عيّنة المؤشر على GitHub.

رموز مؤشر مخصّصة في تطبيق Android

الملحق

موادّ إضافية للقراءة

المؤشرات التلقائية للنظام

في ما يلي المؤشرات المتاحة تلقائيًا في نظام التشغيل Android.

اسم المؤشر رمز
TYPE_ALIAS مؤشر الاسم المستعار، وهو سهم بجانبه سهم صغير منحني
TYPE_ALL_SCROLL مؤشر التمرير في كل الاتجاهات، وهو عبارة عن دائرة تحتوي على أربعة أسهم تشير إلى الخارج
TYPE_ARROW مؤشر السهم العادي
TYPE_CELL مؤشر الخلية
TYPE_CONTEXT_MENU مؤشر قائمة السياق، وهو سهم بجانبه رمز قائمة صغير
TYPE_COPY مؤشر النسخ، وهو سهم بجانبه علامة جمع
TYPE_CROSSHAIR مؤشر الشعيرات المتقاطعة، وهو علامة زائد تتضمّن نقطة في المنتصف
TYPE_DEFAULT مؤشر السهم التلقائي
TYPE_GRAB مؤشر السحب، وهو عبارة عن يد مفتوحة
TYPE_GRABBING مؤشر الإمساك، وهو عبارة عن يد مغلقة
TYPE_HAND مؤشر اليد، وهو عبارة عن يد تشير بإصبع السبابة
TYPE_HELP مؤشر المساعدة، وهو سهم بجانبه علامة استفهام
TYPE_HORIZONTAL_DOUBLE_ARROW مؤشر السهم المزدوج الأفقي لتغيير الحجم
TYPE_NO_DROP مؤشر عدم الإفلات، وهو عبارة عن دائرة يتوسطها خط
TYPE_NULL لن يتم عرض أي مؤشر
TYPE_TEXT مؤشر النص، وهو عبارة عن خط عمودي.
TYPE_TOP_LEFT_DIAGONAL_DOUBLE_ARROW مؤشر السهم المزدوج القطري من أعلى اليسار إلى أسفل اليمين لتغيير الحجم
TYPE_TOP_RIGHT_DIAGONAL_DOUBLE_ARROW مؤشر السهم المزدوج القطري من أعلى اليسار إلى أسفل اليمين لتغيير الحجم
TYPE_VERTICAL_DOUBLE_ARROW مؤشر السهم المزدوج العمودي لتغيير الحجم
TYPE_VERTICAL_TEXT مؤشر النص العمودي، وهو عبارة عن خط أفقي على شكل حرف I
TYPE_WAIT مؤشر الانتظار، وهو عبارة عن ساعة رملية أو دائرة دوّارة
TYPE_ZOOM_IN مؤشر التكبير، وهو عبارة عن عدسة مكبّرة مع علامة زائد
TYPE_ZOOM_OUT مؤشر التصغير، وهو عبارة عن عدسة مكبّرة مع علامة طرح