Di bagian pertama kita telah membuat file-file xml yang berfungsi sebagai layout dan animasi. Kini kita akan membuat file java-nya yang berfungsi untuk mendayagunakan resource yang telah kita buat sebagai splash screen.
Membuat SplashScreen Activity
Oke, inilah file utama yang berguna untuk membuat splash screen pada aplikasi splash screen kita. Pertama-tama di folder src pada proyek Android kalian, bikin sebuah kelas baru dan berinama SplashScreen.java.Setelah itu, copy pastekan kode berikut. Jangan lupa ganti nama package dengan nama package pada proyek Android kalian
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| package id.web.twoh.helloworld; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.view.Window; public class SplashScreen extends Activity{ @Override public void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); this .requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.splash); /*menjalankan splash screen dan menu menggunakan delayed thread*/ new Handler().postDelayed( new Thread() { @Override public void run() { Intent mainMenu= new Intent(SplashScreen. this ,HelloWorldActivity. class ); SplashScreen. this .startActivity(mainMenu); SplashScreen. this .finish(); overridePendingTransition(R.layout.fadein,R.layout.fadeout); } }, 3000 ); } } |
Kemudian kita masuk ke dalam runnable process, di sini kita akan membuat Intent baru untuk berpindah dari aktivitas SplashScreen ini ke aktivitas Main Menu, yang kebetulan di program ini namanya adalah HelloWorldActivity. Setelah itu kita jalankan Intent tersebut dengan menggunakan method startActivity(), yang mana setelah selesai dijalankan, aktivitas SplashScreen kemudian akan memanggil method finish() untuk mengakhiri aktivitas tersebut. Nah, inilah yang membuat kalau kita klik tombol back dari main Menu, kita nggak akan kembali ke layar SplashScreen karena aktivitas tersebut sudah dimusnahkan.
Sedangkan, yang terakhir adalah method overridePendingTransition() yang berfungsi untuk memberikan efek animasi fade-in dan fade-out pada waktu pergantian aktivitas. Kemudian angka 3000 adalah waktu delay untuk parameter masukan, satuannya adalah milliseconds. Yang berarti total proses transisi adalah 3 detik.
Kemudian ini adalah kelas main menunya, bernama HelloWorldActivity.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| package id.web.twoh.helloworld; import android.os.Bundle; import android.app.Activity; import android.view.Menu; public class HelloWorldActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.activity_hello_world); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.activity_hello_world, menu); return true ; } } |
Kemudian ini adalah file activity_hello_world.xml yang berfungsi sebagai layout HelloWorldActivity, sama juga nggak ada modifikasi, kecuali ngganti tulisannya saja.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| android:layout_width = "match_parent" android:layout_height = "match_parent" tools:context = ".HelloWorldActivity" > < TextView android:layout_width = "wrap_content" android:layout_height = "wrap_content" android:layout_centerHorizontal = "true" android:layout_centerVertical = "true" android:text = "@string/hello_world" /> </ RelativeLayout > |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
| <? xml version = "1.0" encoding = "utf-8" ?> package = "id.web.twoh.helloworld" android:versionCode = "1" android:versionName = "1.0" > < uses-sdk android:minSdkVersion = "8" android:targetSdkVersion = "8" /> < application android:allowBackup = "true" android:icon = "@drawable/ic_launcher" android:label = "@string/app_name" android:theme = "@style/AppTheme" > < activity android:name = "id.web.twoh.helloworld.HelloWorldActivity" android:label = "@string/app_name" > </ activity > < activity android:name = "id.web.twoh.helloworld.SplashScreen" android:label = "@string/app_name" > < intent-filter > < action android:name = "android.intent.action.MAIN" /> < category android:name = "android.intent.category.LAUNCHER" /> </ intent-filter > </ activity > </ application > </ manifest > |
Post a Comment