جستجو برای:
سبد خرید 0
  • خانه
  • دوره های آموزشی
    • دوره های حضوری و آنلاین
      • دوره جامع برنامه نویسی اندروید
      • دوره جامع برنامه نویسی فلاتر
      • دوره برنامه نویسی React Native
      • دوره آموزشی برنامه نویسی iOS
    • دوره های متخصص و حرفه ای
      • دوره متخصص اندروید (پروژه محور)
      • دوره متخصص فلاتر (پروژه محور)
      • دوره آموزش امنیت در اندروید
      • دوره درآمدزایی دلاری از گوگل پلی در ایران
  • آموزش رایگان
    • دوره رایگان اندروید
    • دوره رایگان فلاتر
  • مشاورهجدید
  • دوره VIP
  • وبلاگ
ورود
گذرواژه خود را فراموش کرده اید؟
عضویت

اطلاعات شخصی شما برای پردازش سفارش شما استفاده می‌شود، و پشتیبانی از تجربه شما در این وبسایت، و برای اهداف دیگری که در سیاست حفظ حریم خصوصی توضیح داده شده است.

ارسال مجدد کد یکبار مصرف (00:60)
  • 02188945907
  • info@amooznegar.com
  • لیست علاقه مندی ها
آکادمی آموزنگار
  • خانه
  • دوره های آموزشی
    • دوره های حضوری و آنلاین
      • دوره جامع برنامه نویسی اندروید
      • دوره جامع برنامه نویسی فلاتر
      • دوره برنامه نویسی React Native
      • دوره آموزشی برنامه نویسی iOS
    • دوره های متخصص و حرفه ای
      • دوره متخصص اندروید (پروژه محور)
      • دوره متخصص فلاتر (پروژه محور)
      • دوره آموزش امنیت در اندروید
      • دوره درآمدزایی دلاری از گوگل پلی در ایران
  • آموزش رایگان
    • دوره رایگان اندروید
    • دوره رایگان فلاتر
  • مشاورهجدید
  • دوره VIP
  • وبلاگ
شروع کنید
آخرین اطلاعیه ها
لطفا برای نمایش اطلاعیه ها وارد شوید
0

وبلاگ

آکادمی آموزنگار > اخبار > برنامه نویسی > اندروید > روش صحیح ساخت اسپلش اسکرین در اندروید

روش صحیح ساخت اسپلش اسکرین در اندروید

1399-06-22
ارسال شده توسط آموزنگار
اندروید
روش صحیح ساخت اسپلش اسکرین در اندروید

حتماً صفحات اسپلش اسکرین را در شروع هر اپلیکیشن دیده اید. صفحات اسپلش اسکرین در واقع صفحاتی هستند که در ابتدای هر اپلیکیشن موبایل اجرا شده و معمولاً حاوی نام برنامه، لوگو، ورژن و … می باشد. این صفحات گاهی اوقات باعث خسته شدن کاربر می شود زیرا در هر بار باز کردن برنامه مجبور هستند برای چند ثانیه کوتاه هم که شده به آن تصاویر خیره شود.

شاید تعجب کنید زیرا گوگل از این صفحات طرفداری می کند و آن ها را جزئی از طراحی متریال می داند.

همیشه اینطور نبوده و گوگل قبلاً از صفحات اسپلش اسکرین طرفداری می کرد حتی آن را anti-pattern نیز نامید.

اسپلش اسکرین

اکنون گوگل می گوید اسپلش اسکرین وقت کاربر را هدر می دهد و استفاده از آن درست نیست لطفاً این کار را نکنید.

برنامه نویسان برای این کار یک وقفه چند ثانیه ای در کد ایجاد می کنند تا باعث ساخت صفحه اسپلش اسکرین شوند ولی راه اصولی آن را انجام نمی دهند در ادامه ما روش صحیح را به شما آموزش می دهیم.

برنامه های اندروید در هنگام شروع مقداری وقت می گیرند. این تأخیر در شروع برنامه ها به چشم می آید و بهتر است ما بجای نمایش یک صفحه خالی به کاربر تصویر زیباتری نمایش دهیم. این نکته ای است که گوگل از آن حمایت می کند.

اگر به بروزرسانی های اخیر گوگل نگاهی بیندازید استفاده درست و مناسب از اسپلش اسکرین را مشاهده می کنید. به عنوان مثال به برنامه یوتیوب نگاه کنید.

یوتیوب اسپلش اسکرین

مدت زمانی که اسپلش اسکرین نمایش داده می شود دقیقاً همان زمانی است که برنامه برای پیکربندی خود به آن نیاز دارد. اگر برنامه در حافظه کش باشد اسپلش اسکرین بلافاصله از بین می رود ولی در حالت عادی که برنامه نویسان انجام می دهند علاوه بر زمان مورد نیاز برای پیکربندی، زمان در نظر گرفته در اپلیکیشن را هم باید منتظر بمانند.

5 پلاگین ضروری اندروید استودیو که باید هر برنامه نویسی آنها را داشته باشد
خواندن این مقاله
قدرت گرفته از افزونه نوشته‌های مرتبط هوشمند

پیاده سازی اسپلش اسکرین

روش صحیح قرار دادن اسپلش اسکرین خیلی متفاوت تر از چیزی است که شما تصور می کنید. یک صفحه اسپلش باید بلافاصله آماده شود حتی قبل از اینکه شما بتوانید یک فایل لایوت را در اکتیویتی اسپلش خود inflate کنید.

بنابراین شما از فایل لایوت استفاده نمی کنید در عوض پس زمینه اسپلش اسکرین را به عنوان پس زمینه اکتیویتی خود معرفی می کنید. برای این کار به یک فایل xml به نام background_splash در پوشه res/ drawable ایجاد کنید.

1
2
3
4
5
6
7
8
9
10
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
 <item
 android:drawable="@color/gray"/>
 <item>
 <bitmap
 android:gravity="center"
 android:src="@mipmap/ic_launcher"/>
 </item>
</layer-list>

در کد بالا ما یک رنگ پس زمینه و یک تصویر قرار داده ایم.

در مرحله بعدی این فایل را به عنوان پس زمینه اکتیویتی خود تنظیم می کنیم. به فایل style.xml بروید و یک تم جدید برای اکتیویتی اسپلش خود انتخاب کنید:

1
2
3
4
5
6
7
8
9
<resources>
 <!-- Base application theme. -->
 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
 <!-- Customize your theme here. -->
 </style>
 <style name="SplashTheme" parent="Theme.AppCompat.NoActionBar">
 <item name="android:windowBackground">@drawable/background_splash</item>
 </style>
</resources>

در SplashTheme جدید فایل xml خود را که در darwable ایجاد کردید، در ویژگی android:windowBackground قرار دهید. سپس برای پیکربندی اکتیویتی اسپلش خود آن را مانند زیر در فایل AndroidManifest.xml تعریف کنید:

1
2
3
4
5
6
7
8
<activity
 android:name=".SplashActivity"
 android:theme="@style/SplashTheme">
 <intent-filter>
 <action android:name="android.intent.action.MAIN" />
 <category android:name="android.intent.category.LAUNCHER" />
 </intent-filter>
</activity>

در آخر باید کلاس SplashActivity را به MainActivity هدایت کنیم:

1
2
3
4
5
6
7
8
9
public class SplashActivity extends AppCompatActivity {
 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 Intent intent = new Intent(this, MainActivity.class);
 startActivity(intent);
 finish();
 }
}

توجه کنید که ما حتی یک view هم برای SplashActivity تنظیم نکرده ایم. این view، از تم تنظیم شده ناشی می شود. وقتی شما یک UI را برای SplashActivity به عنوان تم تنظیم می کنید آن تم فوراً فعال می شود.

۲۰ ابزار برتر برای توسعه اپلیکیشن های اندروید
خواندن این مقاله
قدرت گرفته از افزونه نوشته‌های مرتبط هوشمند

اگر یک فایل لایوت برای اکتیویتی splash داشته باشید، آن فایل لایوت تنها بعد از راه‌اندازی کامل برنامه شما برای کاربر قابل‌رؤیت خواهد بود که این خیلی دیر است یعنی بعد از پیکربندی برنامه، اسپلش نمایش داده می شود و کاربر هنوز باید منتظر بماند. در روش آموزش داده شده هنگام پیکربندی برنامه، اسپلش اسکرین نمایش داده می شود و زمان خیلی کمتر از روش قدیمی است.

با انجام مراحل فوق شما یک اسپلش اسکرین دارید که به روش صحیح آن را ایجاد کرده اید.

یوتیوب اسپلش اسکرین

با استفاده از این آموزش می توانید صفحه اسپلش خود را به درستی ایجاد کنید تا وقت کاربر هدر نرود و دقت کنید که صفحه اسپلش را تصویر خوبی قرار دهید تا کاربر آن را مشاهده کند.

قبلی اندروید چیست ؟ هرچیزی که درمورد سیستم عامل اندروید می‌خواهید بدانید
بعدی فرصت های شغلی برنامه نویسان موبایل

1 دیدگاه

اولین کسی باشید که در مورد این مطلب اظهار نظر می کند.

  • سیا گفت:
    1403-05-05 در 06:38

    بسیار عالی

    پاسخ

دیدگاهتان را بنویسید لغو پاسخ

جستجو برای:
دسته‌ها
  • GoLang
  • jetpack compose
  • PHP
  • اپلیکیشن
  • امنیت
  • اندروید
  • اوپن سورس
  • برنامه نویسی
  • برنامه نویسی iOS
  • برنامه نویسی react native
  • پادکست صوتی
  • تکنولوژی
  • جاوا
  • طراح رابط کاربری
  • طراحی رابط کاربری
  • طراحی وب
  • عمومی
  • فریلنسر
  • فلاتر
  • فناوری
  • کاتلین
  • کتاب های آموزشی
  • کسب و کار
  • هوش مصنوعی
  • وردپرس
برچسب‌ها
admob coroutine dagger dagger-hilt jetpack nft rxandroid rxjava spring swift ارز دیجیتال امنیت در اندروید دارت فایربیس فوشیا مصاحبه کاری معماری mvi نقشه راه برنامه نویسی کاتلین گوگل

آکادمی آموزنگار، جایی برای آغاز یک سفر شگفت‌انگیز در دنیای برنامه‌نویسی است. آموزنگار تلاش می‌کند تا هر فردی را از هر سطحی از زندگی و تجربه به دنیای جذاب برنامه‌نویسی وارد کند.

دسترسی سریع
  • درباره ما
  • تماس با ما
  • حریم خصوصی
  • سوالات متداول
نمادها
شبکه های اجتماعی
Facebook Twitter Youtube icon--white Whatsapp

تهران، میدان ولی عصر،خیابان شهیدان سازش،کوچه سوم پلاک 5 طبقه سوم واحد 31

021-88945907

تمامی حقوق برای آکادمی آموزنگار محفوظ می باشد

اشتراک گذاری در شبکه های اجتماعی
ارسال به ایمیل
https://amooznegar.com/?p=10973
  • Afghanistan (+93)
  • Albania (+355)
  • Algeria (+213)
  • American Samoa (+1)
  • Andorra (+376)
  • Angola (+244)
  • Anguilla (+1)
  • Antigua (+1)
  • Argentina (+54)
  • Armenia (+374)
  • Aruba (+297)
  • Australia (+61)
  • Austria (+43)
  • Azerbaijan (+994)
  • Bahrain (+973)
  • Bangladesh (+880)
  • Barbados (+1)
  • Belarus (+375)
  • Belgium (+32)
  • Belize (+501)
  • Benin (+229)
  • Bermuda (+1)
  • Bhutan (+975)
  • Bolivia (+591)
  • Bonaire, Sint Eustatius and Saba (+599)
  • Bosnia and Herzegovina (+387)
  • Botswana (+267)
  • Brazil (+55)
  • British Indian Ocean Territory (+246)
  • British Virgin Islands (+1)
  • Brunei (+673)
  • Bulgaria (+359)
  • Burkina Faso (+226)
  • Burundi (+257)
  • Cambodia (+855)
  • Cameroon (+237)
  • Canada (+1)
  • Cape Verde (+238)
  • Cayman Islands (+1)
  • Central African Republic (+236)
  • Chad (+235)
  • Chile (+56)
  • China (+86)
  • Colombia (+57)
  • Comoros (+269)
  • Cook Islands (+682)
  • Côte d'Ivoire (+225)
  • Costa Rica (+506)
  • Croatia (+385)
  • Cuba (+53)
  • Curaçao (+599)
  • Cyprus (+357)
  • Czech Republic (+420)
  • Democratic Republic of the Congo (+243)
  • Denmark (+45)
  • Djibouti (+253)
  • Dominica (+1)
  • Dominican Republic (+1)
  • Ecuador (+593)
  • Egypt (+20)
  • El Salvador (+503)
  • Equatorial Guinea (+240)
  • Eritrea (+291)
  • Estonia (+372)
  • Ethiopia (+251)
  • Falkland Islands (+500)
  • Faroe Islands (+298)
  • Federated States of Micronesia (+691)
  • Fiji (+679)
  • Finland (+358)
  • France (+33)
  • French Guiana (+594)
  • French Polynesia (+689)
  • Gabon (+241)
  • Georgia (+995)
  • Germany (+49)
  • Ghana (+233)
  • Gibraltar (+350)
  • Greece (+30)
  • Greenland (+299)
  • Grenada (+1)
  • Guadeloupe (+590)
  • Guam (+1)
  • Guatemala (+502)
  • Guernsey (+44)
  • Guinea (+224)
  • Guinea-Bissau (+245)
  • Guyana (+592)
  • Haiti (+509)
  • Honduras (+504)
  • Hong Kong (+852)
  • Hungary (+36)
  • Iceland (+354)
  • India (+91)
  • Indonesia (+62)
  • Iran (+98)
  • Iraq (+964)
  • Ireland (+353)
  • Isle Of Man (+44)
  • Israel (+972)
  • Italy (+39)
  • Jamaica (+1)
  • Japan (+81)
  • Jersey (+44)
  • Jordan (+962)
  • Kazakhstan (+7)
  • Kenya (+254)
  • Kiribati (+686)
  • Kuwait (+965)
  • Kyrgyzstan (+996)
  • Laos (+856)
  • Latvia (+371)
  • Lebanon (+961)
  • Lesotho (+266)
  • Liberia (+231)
  • Libya (+218)
  • Liechtenstein (+423)
  • Lithuania (+370)
  • Luxembourg (+352)
  • Macau (+853)
  • Macedonia (+389)
  • Madagascar (+261)
  • Malawi (+265)
  • Malaysia (+60)
  • Maldives (+960)
  • Mali (+223)
  • Malta (+356)
  • Marshall Islands (+692)
  • Martinique (+596)
  • Mauritania (+222)
  • Mauritius (+230)
  • Mayotte (+262)
  • Mexico (+52)
  • Moldova (+373)
  • Monaco (+377)
  • Mongolia (+976)
  • Montenegro (+382)
  • Montserrat (+1)
  • Morocco (+212)
  • Mozambique (+258)
  • Myanmar (+95)
  • Namibia (+264)
  • Nauru (+674)
  • Nepal (+977)
  • Netherlands (+31)
  • New Caledonia (+687)
  • New Zealand (+64)
  • Nicaragua (+505)
  • Niger (+227)
  • Nigeria (+234)
  • Niue (+683)
  • Norfolk Island (+672)
  • North Korea (+850)
  • Northern Mariana Islands (+1)
  • Norway (+47)
  • Oman (+968)
  • Pakistan (+92)
  • Palau (+680)
  • Palestine (+970)
  • Panama (+507)
  • Papua New Guinea (+675)
  • Paraguay (+595)
  • Peru (+51)
  • Philippines (+63)
  • Poland (+48)
  • Portugal (+351)
  • Puerto Rico (+1)
  • Qatar (+974)
  • Republic of the Congo (+242)
  • Romania (+40)
  • Reunion (+262)
  • Russia (+7)
  • Rwanda (+250)
  • Saint Helena (+290)
  • Saint Kitts and Nevis (+1)
  • Saint Pierre and Miquelon (+508)
  • Saint Vincent and the Grenadines (+1)
  • Samoa (+685)
  • San Marino (+378)
  • Sao Tome and Principe (+239)
  • Saudi Arabia (+966)
  • Senegal (+221)
  • Serbia (+381)
  • Seychelles (+248)
  • Sierra Leone (+232)
  • Singapore (+65)
  • Sint Maarten (+1)
  • Slovakia (+421)
  • Slovenia (+386)
  • Solomon Islands (+677)
  • Somalia (+252)
  • South Africa (+27)
  • South Korea (+82)
  • South Sudan (+211)
  • Spain (+34)
  • Sri Lanka (+94)
  • St. Lucia (+1)
  • Sudan (+249)
  • Suriname (+597)
  • Swaziland (+268)
  • Sweden (+46)
  • Switzerland (+41)
  • Syria (+963)
  • Taiwan (+886)
  • Tajikistan (+992)
  • Tanzania (+255)
  • Thailand (+66)
  • The Bahamas (+1)
  • The Gambia (+220)
  • Timor-Leste (+670)
  • Togo (+228)
  • Tokelau (+690)
  • Tonga (+676)
  • Trinidad and Tobago (+1)
  • Tunisia (+216)
  • Turkey (+90)
  • Turkmenistan (+993)
  • Turks and Caicos Islands (+1)
  • Tuvalu (+688)
  • U.S. Virgin Islands (+1)
  • Uganda (+256)
  • Ukraine (+380)
  • United Arab Emirates (+971)
  • United Kingdom (+44)
  • United States (+1)
  • Uruguay (+598)
  • Uzbekistan (+998)
  • Vanuatu (+678)
  • Venezuela (+58)
  • Vietnam (+84)
  • Wallis and Futuna (+681)
  • Western Sahara (+212)
  • Yemen (+967)
  • Zambia (+260)
  • Zimbabwe (+263)
مرورگر شما از HTML5 پشتیبانی نمی کند.

سوالی دارید؟ از ما بپرسید، کارشناسان ما در اسرع وقت با شما تماس می گیرند.

آموزنگار

آکادمی آموزنگار

  • 021-88945907
  • شنبه تا چهارشنبه از ساعت 8 تا 17
  • info@amooznegar.com
ورود
استفاده از شماره تلفن
استفاده از آدرس ایمیل
آیا هنوز عضو نشده اید؟ ثبت نام کنید
بازیابی رمز عبور
استفاده از شماره تلفن
استفاده از آدرس ایمیل
ثبت نام
استفاده از شماره تلفن
استفاده از ایمیل
قبلا عضو شده اید؟ ورود به سیستم
محافظت توسط