应用程序启动没有启动活动

时间:2016-11-18 18:29:06

标签: java android android-activity splash

我尝试在应用程序启动时放置我的图像。我有MainActivity并且像这样做第二个:

public class SplashActivity extends Activity
{
    private static final long DELAY = 3000;
    private boolean scheduled = false;
    private Timer splashTimer;

    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.splash);

        splashTimer = new Timer();
        splashTimer.schedule(new TimerTask()
        {
            @Override
            public void run()
            {
                SplashActivity.this.finish();
                startActivity(new Intent(SplashActivity.this, MainActivity.class));
            }
         }, DELAY);
       scheduled = true;
    }

    @Override
    protected void onDestroy()
    {
        super.onDestroy();
        if (scheduled)
            splashTimer.cancel();
        splashTimer.purge();
    }
}

SplashAcitivity.xml我添加:

android:background="@drawable/my_image"

和ofc我将my_image复制到文件夹drawable

Android studio在我的代码中没有下划线,看起来不错,但是当我运行这个应用程序时,应用程序像以前一样工作,只有MainActivity。我没有想法如何解决它。

1 个答案:

答案 0 :(得分:0)

您编辑AndroidManifedst以在MainActivity之前运行splashScreen吗?

你需要改变吗

<activity
    android:name=".MainActivity"
    android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
     </intent-filter>
</activity>

你需要改变

<category android:name="android.intent.category.LAUNCHER" />

<category android:name="android.intent.category.DEFAULT" />

并在SplashScreen中放置

<category android:name="android.intent.category.LAUNCHER" />