كيفية اعطاء للمستخدم حرية اختيار ايقونة التطبيق ؟

السلام عليكم ..

كما تعلمون ابل في تحديث ios 10.3 اضافة ميزة تسمح للمطورين من اضافة ايقونات مختلفة لتطبيقاتهم ،
بما يجعل لمستخدمين حرية اختيار الايقونة المفضله لديهم بدلاُ من اجبارهم على ايقونة واحده !

الطريقة ليست صعبه ولكن تتطلب بعض الخطوات

اولا :
نضيف الايقونة الاساسية في ملف appicon في مجلد Assets.xcassets
ستوجب عليك اضافة جميع الاحجام ولكن لغرض هذا الدرس اضفت ايقونة بحجمين مختلفين احداهم بحجم شاشة الايفون ٧ والاخر بحجم الايفون ٧ بلس

للتسهيل عليك  يمكنك عمل ايقونة بحجم 1500 في 1500
ومن ثم رفع الايقونة على هذا الموقع Makeappicon
وسوف ينتج لك جميع الايقونة بجميع الاحجام سوا كانت للـ ios او الاندوريد

وايضا هناك تطبيق في متجر البرامج يقوم بنفس هذه الوظيفة واكثر باسم Asset Catalog Creator

ثانيا : اضيف الايقونات الاخرى  خارج مجلد Assets.xcassets
يمكنك فعل كما فعلت بجعل كل ايقونة بديله في مجلد ، لاحظ يتوجب عليك تسمية الايقونات باسماء مختلفة
وليس ضروري جعل كل ايقونة في مجلد مستقل
الاهم هو تسمية الايقونات
فالايقونه الاولى تم تسميتها بـ icon 1
والايقونة الثانية تم تسميتها بـ icon 2

ثالثا : تحتاج الى اضافة بعض الاسطر لملف Info.plist

١. قم بفتح ملف Info.plist 
وانشى سطر جديد  عن طريقة الضغط على علامة “+” وقم بتسميته باسم CFBundleIcons
سوف يتغير تلقائيا الى Icon files (iOS 5)
و اجعله من نوع Dictionary

٢. اضغط على السهم بجانب Icon files (iOS 5) ومن ثم اضغط على علامة “+”
لاضافة حقل اسفل Icon files (iOS 5)
وباسم CFBundleAlternateIcons وايضا من نوع Dictionary

٣. اضغط على السهم بجانب CFBundleAlternateIcons ومن ثم اضغط على علامة “+”
لاضافة حقل جديد

هذا الحقل قم بتسميته باسم الايقونة البديله هنا سوف نقومب تسميته بـ “icon 1”
واجعل نوعه Dictionary

٤. اضغط على السهم بجانب “icon 1” ومن ثم اضغط على علامة “+”
وقم بتسميته باسم CFBundleIconFiles وهذه المره اجعله من نوع Array

٥. اضغط على علامة الـ “+” بجانب “CFBundleIconFiles”
سيظهر حقل جديد باسم “item 0” من نوع String
اجعل هذا الحقل باسم الايقونه ،  نحن قمنا بتسميتها بـ icon 1 فاجعل قيمتها بنفس الاسم

كرر الخطوات من ٣ الى ٥ على حسبب عدد الايقونات التي تريدها

صورة توضح الخطوات السابقة بعد اضافة ايقونتين واحده باسم icon 1 والاخرى باسم icon 2

رابعا : اذهب الى Main.Storyboard
واضيف Segmented Control

قمة بتغيير مسمياتها حسب رغبتك ، او اجلعها كما في الصورة

خامسا : اضغط على زر control واسحب الـ segmented الى ملف الاكواد وقم بتسميته بـ segmentedControl
واجعل النوع Outlet

سادسا :  اضغط على زر control واسحب الـ segmented الى ملف الاكواد وقم بتسميته بـ indexChanged

سابعا :
الان بداخل اقواس indexChanged اضيف التالي

 

لاحظ التالي :

هذا السطر معناه الايقونة الاصلية

 

 

بقية الاسطر يتم كتابة اسماء الايقونات بدلا من nil

اخيراً :
قم بتشغيل البرنامج وسوف تلاحظ امكانية تغيير ايقونة التطبيق

ستظهر رسالة تفيد بعملية التغير كهذه :

يمكن تحميل المشروع من هنا

 

Add a Comment

لن يتم نشر عنوان بريدك الإلكتروني.