Dans notre cas nous allons simplement afficher l'image suivante (placée dans le répertoire res/drawable)
Le splash screen sera une activité que nous allons déclarer dans le fichier AndroidManifest.xml
<application
android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@android:style/Theme.Light">
<activity
android:name=".SplashActivity"
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=".ScoreSheetActivity" android:label="@string/app_name"
android:screenOrientation="portrait">
</activity>
....
</application>
Dans notre activité nous allons déclarer un objet Handler permettant de déclencher une action dans un nouveau thread.
public class SplashActivity extends Activity{
private final static int DELAY = 3000;
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
}
/**
* On gère le traitement du splashscreen dans la méthode onResume
* pour gérer le cas où l'application est mis en pause par une autre
* ou par le système
*/
@Override
protected void onResume(){
super.onResume();
//Un handler permet de lancer un traitement dans le futur
new Handler().postDelayed(new Runnable()
{
@Override
public void run()
{
//Finish the splash activity so it can't be returned to.
SplashActivity.this.finish();
// Create an Intent that will start the main activity.
Intent mainIntent = new Intent(SplashActivity.this, ScoreSheetActivity.class);
SplashActivity.this.startActivity(mainIntent);
}
} , DELAY);
}
}
Le layout splash.xml sera de cette forme
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/splash" />
</RelativeLayout>
Article précédent / Sommaire / Article suivant

Aucun commentaire:
Enregistrer un commentaire
Remarque : Seul un membre de ce blog est autorisé à enregistrer un commentaire.