بسم الله الرحمن الرحيم
كيفية جعل مشروعك الاندرويد يدعم التصميم الحديث الماتيريال ديزاين في لاصدارات سابقة.
نظام التصميم الحديث التي اتخذته جوجل الأساسي يدعم 20 فما فوق, ولكن هناك أخبار أنها رسمياً سوف تدعمه في الاصدارات السابقة, او لديها اقتراح ان تتسارع بتطوير الاصدارات لكي تنتسى الاصدارات القديمة.
لأن الآن أكثر من 99% من مستخدميها .. يستخدموا اصدارات كت كات 4.4 وما دون, عموماً في هذه التدوينة سوف نرى كيف نستخدم مكتبة خارجية من قبل شخص اسمه إيفان من إسبانيا قام بعملها.
معاينة لاستخدامها :
رابط المكتبة : https://github.com/navasmdc/MaterialDesignLibrary
في حال أردت استخدامها في برنامج اكليبس يجب عليك تحميلها واستخدامها كمكتبة وإضفها لمشروعك.
إما في اندرويد ستوديو فاستخدامها جداً سهل ولا يحتاج الى اي تحميل ..
فقط بإضافة سطر واحد في ملف البناء build.gradle .
compile 'com.github.navasmdc:MaterialDesign:1.+@aar'
وبعدها اعمل مزامنة لمشروعك ~ .. ومن داخل رابط المكتبة الذي ادرجتها في الاعلى .. تجد في الأسفل الأكواد التي تستخدمها لأهم الأدوات التي تدعمها هذه المكتبة.
و أكثرها شيوعاً هو الزر .. تستخدمه بالكود التالي :
<com.gc.materialdesign.views.ButtonRectangle android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#1E88E5" android:text="Button" />
و هناك بعض الأدوات التي تستخدم وثيقة الماتيريال وتحتاج الى اضافة السطر :
xmlns:materialdesign="http://schemas.android.com/apk/res-auto"
في أعلى ملف اللياوت المستخدم.
الأمر جداً بسيط وسهل .. تستطيع الرجوع إلى رابط المكتبة لاستخدام بقية الادوات ..
وانتظرونا في دروس قادمة ان شاء الله .. والسلام عليكم 🙂
شكرا
بس الكود تبع الزر وين بحطوا ؟
وكود الصلاحيات بملف ال مينفيست ؟
العفو, كود الزر طبيعي مثل أي زر ؟! .. داخل اللياوت .. أثناء التصميم ..
ولا يحتاج صلاحيات 🙂
اخى الكريم شكرا لك ولكن الدرس غير واضح
نرجو الشرح بمثال واضح
تمام أخي .. اي نقطة غير واضحة .. تفعيل المكتبة او استخدامها ؟! ..
تفعيلها فقط بإضافة السطر المذكور في الملف المذكور .. ؟! ..
أما استخدامها … وقت تستخدم زر الكود الخاص بالزر هو :
اما الزر في المكتبة مختلف .. فهو عنصر خاص .. والعناصر موجودة في صفحة المكتبة المتوفرة :
استخدام الزر من المكتبة بهذا الكود :
واضحة ؟! ..
نعم أخي لكن لدي أستفسار أنا أستخدم برنامج AIDE
هل تشرح لنا كيف نضيف المكتبة بتفصيل أرجو الرد
اهلا وسهلا بك … بصراحة اول مرة اعرف عنه .. ممكن تشرح لنا بسطور مختصرة ما هذا الـ aide ومعذرة منك لم يسبق لي استخدامه لاعرف كيفية اضافة المكتبة اليه ..
أنه برنامج علی أندرويد يشبه عمل أكلبس أي برمجة اندرويد وانا اطبق دروسك علی هذا البرنامج وانه يحقق النبيجة المذكورة لكن حملت المكتة و أضفتها وعندما أضيف كود Button المكتبة لا يعمل التطبيق الذي صممته علی هذا البرنامج
رابط البرنامج:
http://market.android.com/search?q=pname:com.aide.ui
مشكور على التوضيح اخي 🙂
اخي الطريقة لا تعمل يظهر لي خطا.:
Failed to resolve :com.githugithub.navasmdc:Materialdesign:1.+
غريب؟!
جرب التالي اخي :
شكرا اخي ساويت مزامنة وما اظهر خطا ……… لكن عند اضافة الزر يظهر لي خطا:
The following classes could not be instantiated:
مع العلم انا لدي زر بشكل دائرة (background ) يعني عملت ملف drawable بشكل دائرة واضفته على الزر كbackground واصبح الزر بشكل دائرة …… وعندما اضيف :
com.gc.materialdesign.views.Buttons يظهر هذا الخطا وحتى عندما اضيفه إلى زر عادي ….. ما المشكلة ؟
العفو اخي .. ان شاء الله اكن فهمت على طلبك ..
اخي هذه المكتبة كلاسات خاصة .. ليست مثل الزر العادي .. لها خصائص خاصة فيها ..
لذلك مشكلتها حتى لا يوجد فيها خاصية تكبير الخط على ما اعتقد .. لذلك لا تستطيع استخدامها مع العناصر الاخرى ..
راجع الرابط الموجود الخاص بالمكتبة لمعرفة عنها اكثر .. إذا كان الزر تريده بالشكل الدائري جرب استخدام :
com.gc.materialdesign.views.ButtonFloat
إن شاء الله أكن افتدك . . واذا لم تنجح معك جرب استخدام الماتيريال ديزاين بطريقة اخرى 🙂
شكرا اخي…….. كل ما اردته هو اضافة تأثيرات عند الضغط على الزر …..هل يوجد طريقة اخرى؟
ما هي نوعية التاثيرات التي تريدها .. يوجد طرق كثيرة ..
it does’t work
ممكن اعرف وين الخطأ او المشكلة ؟! ..
قرأت في شرح ان المفروض اعمل فولدر values_21 لانو المتيريال ديزاين لا تعمل علىsdk version اقل من 21
فانا الاصدارة بتاعتي ما 21 وبعمل لي error in style file
نعم يوجد أكثر من طريقة لاستخدام الماتيريال .. وهذه مكتبة خاصة 🙂
طيب ان شغالة بي اكلبس واعتقد انو ما تحشتغل من غير اخر اصدارة
حاولت اعمل تحديث للاكلبس ما ظبط معي شو اعمل؟؟؟
بالنسبة للاكليبس يجب تحميل المكتبة ووضعها بملجد libs , هل قمت بذلك ؟؟ ..
قمت بعمل import لتطبيق به متيريال ديزاين وتعاملت معه كlibrary للتطبيق الاساسي
نعم انا معك ولكن انا في هذا الشرح, كتبت عن هذه الطريقة فقط, , ولن ينجح الأمر إذا استخدمتي تطبيق كمتبة لأن التطبيق في الغالب يكن متصل تماماً بالماتريال رسمياً .. لذلك أما استخدام هذه الطريقة كما مذكورة في الشرح, أو الانتظار لكتابة تدوينات اخرى لطرق اخرى .. وقريباً ان شاء الله فقط انتهي من المشاريع التي في يدي 🙂
شكرا على تجاوبك وانا في الانتظار
🙂
هل تحتاج الطريقة عند مزامنة ملف Gradle إلى انترنت للعلم انا استخدم اندرويد ستوديو .