إنشاء شاشة البداية Splash Screen بسيطة في الاندرويد
سنتعلم في هذا البرنامج التعليمي إنشاء شاشة الترحيب او البداية باستخدام
لغة الجافا في الاندرويد إنها شاشة ثابتة تظهر لفترة زمنية مؤقتة ،شاشة
البداية هي أول شاشة تظهر عند فتح التطبيق للمرة الاولى. بمعنى آخر ، إنها
شاشة ثابتة بسيطة ذات مدة ثابتة تُستخدم لعرض شعارات الشركة والعناوين
والمحتوى الإعلاني وما إلى ذلك.
رابط تحميل الملفات الخاصة بمشروع اسفل المقال
الخطوة الاول سوف اقوم بتصميم ملف شاشة البداية اول انشاء نشاط جديد ونسمية SplashActivity وملف تصميم النشاط layout ونسمية activity_splash.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:background="@color/white"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:id="@+id/SplashScreenImage"
android:layout_width="350dp"
android:layout_height="350dp"
android:src="@drawable/as_logo"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="25dp"
android:fontFamily="sans-serif-black"
android:gravity="center"
android:text="@string/app_name1"
android:textColor="@color/colorPrimary"
android:textSize="30sp"
android:textStyle="bold" />
</LinearLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
الخطوة الثانية نقوم ببرمجة النشاط SplashActivity.java
import androidx.appcompat.app.AppCompatActivity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.WindowManager;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.ImageView;
public class SplashActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_splash);
final ImageView ImageView1 = findViewById(R.id.SplashScreenImage);
Animation animSlide = AnimationUtils.loadAnimation(getApplicationContext(),
R.anim.side_slide);
ImageView1.startAnimation(animSlide);
(new Thread() {
public void run() {
try {
sleep(3000L);
} catch (InterruptedException interruptedException) {
} finally {
Exception exception;
}
SplashActivity.this.StartApp();
}
}).start();
}
private void StartApp() {
try {
finish();
Intent intent = new Intent((Context)this, MainActivity.class);
startActivity(intent);
return;
} catch (Exception exception) {
return;
}
}
}
الخطوة الثالثة نقوم بأضافة هذا AppThemeNoBar في ملف ال styles
<style name="AppThemeNoBar" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
الخطوة الرابعة نقوم بأنشاء مجلد anim نقوم بانشاء ملف الحركة للصورة داخل الجلد ونسمية side_slide.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<!--THIS CODE IS FOR SIDE ANIMATION-->
<translate
android:duration="1500"
android:fromXDelta="-50%"
android:fromYDelta="0%" />
<alpha
android:duration="1500"
android:fromAlpha="0.1"
android:toAlpha="1.0" />
</set>
الخطوة الاخيرة نقوم بأضافة النشاط في ملف ال AndroidManifest بهذا الشكل
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:largeHeap="true"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
</activity>
<activity
android:name=".SplashActivity"
android:launchMode="singleTask"
android:screenOrientation="portrait"
android:theme="@style/AppThemeNoBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
قم بتنزيل كود درس Splash Screen مجانًا: انقر هـــــــــــــــنــــــا للتحميل
لا تنسوا متابعتنا على موقعنا و الاشتراك في قناتنا على اليوتيوب و مواقع
التواصل الاجتماعي
والسلام عليكم ورحمة الله
شكرا لكم علي زيارة موقعنا " علوش لتقنية المعلومات "
إرسال تعليق