ساخت صفحه ی Splash در اندروید

سایت ترجمه رایت می
سفارش آنلاین ترجمه مقالات و متون تخصصی با خیال راحت
سفارش آنلاین ترجمه مقالات و متون تخصصی با خیال راحت
تور مشهد
تور مشهد، همه روزه از تمام شهرهای ایران.
تور مشهد، همه روزه از تمام شهرهای ایران.
طراحی سایت تبریز
طراحی سایت تبریز - طراحی سایت در تبریز -طراحی وب سایت تبریز - طراحی وب تبریز
طراحی سایت تبریز - طراحی سایت در تبریز -طراحی وب سایت تبریز - طراحی وب تبریز
دارالترجمه رسمی
دارالترجمه رسمی پارسیس شامل خدمات ترجمه رسمی و تخصصی در بیش از 60 زبان زنده دنیا
دارالترجمه رسمی پارسیس شامل خدمات ترجمه رسمی و تخصصی در بیش از 60 زبان زنده دنیا
آموزش ساخت موشن گرافیک
آموزش موشن گرافی در افتر افکت در فالب پروزه های حرفه ای
آموزش موشن گرافی در افتر افکت در فالب پروزه های حرفه ای
آموزش الکترونیکی
دوره جامع برای تولید محتوا، ساخت و درآمدزایی با آموزش الکترونیک
دوره جامع برای تولید محتوا، ساخت و درآمدزایی با آموزش الکترونیک
دانشنامه مشخصات
بیوگرافی بازیگران ، هنرمندان ، ورزشکاران ، اشخاص و اطلاعات عمومی
خودتان را اینجا معرفی کنید
بیوگرافی بازیگران ، هنرمندان ، ورزشکاران ، اشخاص و اطلاعات عمومی
اگر برای اپلیکیشن اندروید خود صفحه ی Splash تعریف نکنید هنگام اجرای اپلیکیشن شما در موبایل کاربر، به صورت پیشفرض صفحه ای مشکی با عنوان برنامه شما به کاربر نمایش داده میشود و سپس به اکتیویتی اصلی برنامه میرود، برای جلوگیری از این کار باید صفحه ی Splash برای اپ خود بسازید، ، پس از دیدن صفحه ی Splash کاربران باید به اکتیویتی اصلی برنامه هدایت شوند و نکته ی مهمی که وجود دارد این میباشید که کاربران نباید با زدن دکمه ی Back گوشی بتوانند به صفحه ی Splash دسترسی پیدا کنند.
ابتدا یک صفحه xml میسازیم به اسم splashscreen.xml و صفحه ای که به عنوان صفحه ی splash میخواهیم نشان بدهیم را طراحی میکنیم، برای مثال میتوانیم از این قطعه کد ساده استفاده کنیم :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Hello World, splash"/>
</LinearLayout>
سپس باید کد Java را وارد کنیم، یک کلاس به اسم Splash بسازید، قطعه کد زیر را در آن وارد کنید، در ادامه نحوه کارکرد این کد را توضیح خواهم داد :
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
public class Splash extends Activity {
private final int SPLASH_DISPLAY_LENGTH = 2000;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.splashscreen);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
Intent mainIntent = new Intent(Splash.this, SplashScreenActivity.class);
Splash.this.startActivity(mainIntent);
Splash.this.finish();
}
}, SPLASH_DISPLAY_LENGTH);
}
}
یک متغیر به اسم SPLASH_DISPLAY_LENGTH تعریف کردیم که در آن زمان مورد نیاز برای نشان دادن صفحه Splash را به میلی ثانیه وارد میکنیم. سپس یک Handler میسازیم، استفاده از Handler و runnable به این دلیل است که اپلیکیشن ما ارورهای مربوط به Thread UI ندهد و روان اجرا شود، اگر به مفاهیم برنامه نویسی همزمانی یا Concurrent Programming تسلط ندارید میتوانید از این قسمت کد به صورت کلیشه در پروژه هایتان استفاده کنید. در نهایت هم در متد run با استفاده از intent در اندروید از اکتیویتی splash به اکتیویتی مورد نظرمان در برنامه میرویم.
نکته
فایل Manifest فراموش نشود وگرنه تمام زحمات شما به باد میرود !! در فایل منیفست باید اولین اکتیویتی که آغازگر برنامه میباشد را اکتیویتی Splash معرفی کنیم و بعد اکتیویتی های مربوط به برنامه خودمان را معرفی کنیم، برای مثال کد Manifest ما باید شبیه به کد زیر باشد :
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="splashscreen.me.here"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="8" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".Splash"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".SplashScreenActivity"
android:label="@string/app_name" >
</activity>
</application>
</manifest>
نظرات و سوالات کاربران
عالی بود!