
تقديم:
مرحبا بكم في درس جديد يخص كوتلين : طريقة برمجة تطبيق خاص بالوصفات حيث سنشرح طريقة البرمجة من الصفر و لكن الجديد هذه المرة هو استعمال لغة كوتلين الجديدة التي أعلنت جوجل على بدء استعمالها لبرمجة تطبيقات الأندرويد.
و بالنسبة للغة كوتلين فهي لغة سهلة و حديثة العهد و قد تم تصميمها للتعامل والتوافق الكامل مع الجافا وحزمة تطويرها JDK و هي تتيح كتابة الشيفرة البرمجية بعدد أقل من الأسطر وبشكل أسرع وأكثر فاعلية مقارنة بلغة الجافا حيث تعتبر شبيهة بلغة سويفت من أبل التي يتم بها تطوير تطبيقات الآيفون.
و سيتم تقديم الدرس على شكل 6 أجزاء بمعنى، سيتم عرض 6 فيديوهات على الشكل التالي:
أجزاء الدرس:
الفيديو الأول:تقديم عام
الفيديو الثاني: خاص بالتصميم
الفيديو الثالث: خاص بالتكويد
الفيديو الرابع: خاص بطريقة إضافة الإعلانات
الفيديو الخامس: خاص بتنظيم التطبيق و إعداد مقاساته
الفيديو السادس و الأخير: خاص بطريقة الريسكين
تصميم التطبيق:
تطبيقنا سيضم ثلاث صفحات:
صفحة البداية: و التي ستحتوي على اسم التطبيق و وصف له و كذلك أيقونته و ستحتوي على زر يتم الدخول للتطبيق عند الضغط عليه بالإضافة إلى زر في الأسفل يمكن من ولوج اتفاقية الاستخدام و سياسة الخصوصية عند الضغط عليه.
صفحة جميع الوصفات: و هي صفحة تحتوي على جميع وصفات التطبيق حيث يتم عرض صورة الوصفة، و عند الضغط عليها يتم الانتقال لصفحة الوصفة المنفردة.
صفحة الوصفة المنفردة: في هذه الصفحة يتم عرض صورة للوصفة المختارة و مقاديرها و أيضا طريقة تحضيرها.
برمجة التطبيق:
+ كود الانتقال من صفحة لصفحة أخرى:
startActivity(Intent(baseContext, class_name::class.java)) |
+ كود الانقال إلى Activity معينة مع إرسال متغير معين:
val intent = Intent(this, classe_name::class.java) intent.putExtra("element_name",element_value ) startActivity(intent) |
+ كود استقبال متغير عددي من Activity معينة:
element_name = getIntent().getIntExtra("element_name", 0) |
+ كود فتح موقع ما:
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse("URL"))) |
+كود تغيير نوع خط معين:
val typeface = Typeface.createFromAsset( assets, "font.ttf") textView.typeface=typeface |
+كود الحصول على عدد الملفات في مجلد معين في الأسيت:
Int_name= assets.list("folder_name").size |
+ كود إنشاء ImageView جديدة و ضبط أبعادها و هوامشها:
val ImageView_name = ImageView (this) val layoutparams = LinearLayout.LayoutParams( ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT) layoutparams.setMargins(left, top, right, bottom) ImageView_name.layoutParams=layoutparams |
+كود إضافة عنصر معين إلى LinearLayout:
LinearLayout.addView(View) |
+كود إعطاء Tag لعنصر معين:
View.tag = Tag |
+كود تكوين Id معين انطلاقا من String:
resources.getIdentifier("id_name", "id_type", packageName) |
+كود تغيير الصورة داخل ImageView معينة:
من أجيل تسهيل و ضع الصور ة تجنب المشاكل التي تحدث عند استعمال الكثير من الصور مثل مشكل OutOfMemoryError Exception تم الاعتماد على مكتبة خارجية تسمى Picasso و التي يمكن الاطلاع على كيفية إضافتها و أيضا على أكوادها من هذا الرابط:
+ أكواد البانر:
val mAdView = findViewById(R.id.adView) as AdView val adRequest = AdRequest.Builder().build() mAdView.loadAd(adRequest) |
+أكواد الإنترستيشل:
internal lateinit var mInterstitialAd: InterstitialAd mInterstitialAd = InterstitialAd(this) mInterstitialAd.adUnitId=ca-app-pub-3940256099942544/1033173712 mInterstitialAd.adListener=object:AdListener() { override fun onAdClosed() { requestNewInterstitial()}} requestNewInterstitial() if (mInterstitialAd.isLoaded) { mInterstitialAd.show()} private fun requestNewInterstitial() { val adRequest = AdRequest.Builder().build() mInterstitialAd.loadAd(adRequest)} |
+ كود xml لإضافة البانر:
<com.google.android.gms.ads.AdView xmlns:ads="http://schemas.android.com/apk/res-auto" android:id="@+id/adView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" ads:adSize="BANNER" ads:adUnitId="ca-app-pub-3940256099942544/6300978111" /> |
+ كود وضع مسافة بين السطور:
<TextView android:lineSpacingExtra="10dp" /> |
+ كود إضافة تصريحات الولوج للأنترنت:
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> |
والسلام عليكم ورحمة الله تعالى و بركاته.
ليست هناك تعليقات:
إرسال تعليق