Android Menu
قائمة ال menu هي لوحة تحكم يمكن من خلالها الوصول الى عدة واجهات في التطبيق بكل سهولة , بحيث تكون في اعلى الصفحة تعرض لك الواجهات او icon تدل على واجهة او خدمات معينة .
- App bar : بحيث هو الشريط الموجود في الاعلى بحيث يتضمن عنوان الصفحة و وقائمة ال menu وعدد الا icon الدالة على صفحات او خدمات معينة .
- Options menu action icons : هي نوع من ال menu يمكن من خلالها الوصول الى واجهات او خدمات معينة .
- : Overflow button عند الضغط على هذه الثلاث نقاط تظهر قائمة تحتوي العناصر المراد الوصول اليها .
- Options overflow menu : هذه العناصر داخل ال menu تظهر بعد الضغط على الثلال نقط الرئيسية او اي شكل لل menu .
كيف انشئ menu ؟
يتم انشاء ال menu من خلال تعرف ملف من نوع xml في داخله ال item عناصر هذه القائمة , ممكن ان يكون لكل واجهة menu خاصة فيها. فنقوم بتعرف كل واحدة في ملف xml منفصل.
خطوات انشاء menu :
اولا : في فولدر ال app نضغط زر اليمين على الماوس , ومن ثم new , ونختار Android Resource Directory .
تظهر لنا نافذة نحدد ال type من نوع menu . هكذا تم انشاء فولدر سيحتوي جميع فولدرات ال xml الخاصة بكل menu .
ثانياً : في هذا الملف اللذي تم انشائه اللذي اسمه menu , نذغط الزر اليمين على الماوس , ومن ثم new , ونختار Menu Resource File . تظهر لي نافذه نختار اسم معرف لهذه ال menu .
هكذا اصبح لدينا ملف menu لكي نعرف العناصر بداخله يجب تعريف ما يعرف ب items .
ثالثاً : نعرف item وعطي له id وصورد محددة icon و عنوان tittle .
اذا كنت احتاج menu فيها ثلاث عناصر نعرف 3 Items .
رابعاً نريد ربط هذه ال menu مع الواجهة المحددة في كلاس الجافا
فنذهب الى الكلاس وعمل override ل 2 method
الاولى ()onCreateOptionMenu
نربط ملف ال menu هنا بإستخدام ما يسمى بال inflater هكذا :
;(getMenuInflater().inflate(R.menu.menuName,menu
الثانية ()onOptionItemSelected
يستدعة هذه ال method عند الذغط على اي Item
لتحديد اي عنصر تم الضغط عليه واختياره بإستخدام ال id الخاص فيه
;()int id =item.getItemId
هذا الكود يحددلي اي Item تم اختياره والضغط عليه و ننفذ ماذا نريد بعد الضغط على هذا العنصر كالذهاب الى واجهة جديدة او تنفيذ أمر معين.