Splash Screen einer app

  • Antworten:4
  • Bentwortet
Thor93
  • Forum-Beiträge: 487

10.09.2012, 10:34:58 via Website

Hallo Leute,

Ich wollte mal fragen ob ihr ein gutes Tutorial kenn wo es um das Thema Splash Screens geht.

Ich habe es mit diesem http://www.mubasheralam.com/tutorials/android/how-create-splash-activity-android versucht aber es will mir nicht gelingen.

Gruß Thor 93

— geändert am 10.09.2012, 10:35:19

Jedem das Seine, doch Mir das Meine

Antworten
Florian B.
  • Forum-Beiträge: 284

10.09.2012, 11:53:55 via Website

Wo genau liegt das Problem?

Antworten
Thor93
  • Forum-Beiträge: 487

10.09.2012, 12:44:18 via Website

1import android.R;
2import android.app.Activity;
3import android.content.Intent;
4import android.os.Bundle;
5import android.os.Handler;
6import android.os.Message;
7
8public class SplashActivity extends Activity {
9
10 /** Called when the activity is first created. */
11 @Override
12 public void onCreate(Bundle savedInstanceState) {
13
14 super.onCreate(savedInstanceState);
15
16 //Create an object of type SplashHandler
17 SplashHandler mHandler = new SplashHandler();
18 // set the layout for this activity
19 setContentView(R.layout.splash); // wird nicht erkannt, obwohl es im layout ordner eine xml mit diesen namen gibt
20 // Create a Message object
21 Message msg = new Message();
22 //Assign a unique code to the message.
23 //Later, this code will be used to identify the message in Handler class.
24 msg.what = 0;
25 // Send the message with a delay of 3 seconds(3000 = 3 sec).
26 mHandler.sendMessageDelayed(msg, 3000);
27 }
28
29
30 private class SplashHandler extends Handler {
31
32
33 public void handleMessage(Message msg)
34 {
35
36 switch (msg.what)
37 {
38 default:
39 case 0:
40 super.handleMessage(msg);
41
42 Intent intent = new Intent();
43 intent.setClass(SplashActivity.this,hauptActivity.class);
44 startActivity(intent);
45
46 SplashActivity.this.finish();
47 }
48 }
49 }
50
51}

Jedem das Seine, doch Mir das Meine

Antworten
Florian B.
  • Forum-Beiträge: 284

10.09.2012, 12:55:45 via Website

Da liegt der Fehler:

1import android.R;

Du importierst die falsche R Klasse. Das ist die Klasse die mit dem Android SDK kommt, dein Projekt müsste aber eine eigene R Klasse haben. Lösche den Eintrag mal in deiner Klasse und drück in Strg+O. Dann sollte die richtige importiert werde, oder dir zumindest die richtige R Klasse zur Auswahl angeboten werden. Wenn es diese R Klasse unter deinem Paketnamen nicht gibt, dann passt irgendwas mit deinen XML Files nicht, da die R Klasse auf Basis dieser automatisch generiert wird.

Antworten
Thor93
  • Forum-Beiträge: 487

10.09.2012, 13:02:36 via Website

Hey,
cool danke :wink:
vielleicht kannst du mir auch noch kurz sagen wieso er mir trozdem immer in die Haupt activity springt und nicht erst in den Splash screen 8o

Vieleicht hilft das Android Manifest dafür ja

1?xml version="1.0" encoding="utf-8" ?>
2<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3 package="Testapp"
4 android:versionCode="1"
5 android:versionName="1.1" android:installLocation="auto">
6
7
8 <uses-sdk android:minSdkVersion="8" />
9 <uses-permission android:name="android.permission.READ_SMS"/>
10 <uses-permission android:name="android.permission.INTERNET"/>
11 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
12
13 <application
14 android:icon="@drawable/mobiletokenappicon48"
15 android:label="@string/app_name" >
16 <activity
17 android:screenOrientation="portrait"
18 android:name=".hauptactivity"
19 android:label="@string/app_name"
20 >
21 <intent-filter>
22 <action android:name="android.intent.action.MAIN" />
23 <category android:name="android.intent.category.LAUNCHER" />
24 </intent-filter>
25
26 </activity>
27
28 <activity
29 android:name=".registrierungActivity"
30 android:label="@string/regisrierung" >
31 </activity>
32
33 <activity android:name=".SplashActivity"
34 android:label="@string/app_name">
35 <intent-filter>
36 <action android:name="android.intent.action.VIEW" />
37 <category android:name="android.intent.category.LAUNCHER" />
38 </intent-filter>
39</activity>
40 </application>
41
42</manifest>

Gruß Thor93


Edit habe den Fehler gefunden :)

— geändert am 10.09.2012, 13:04:10

Jedem das Seine, doch Mir das Meine

Antworten