fiore@0: /* fiore@0: CCmI Diagram Editor for Android fiore@0: fiore@0: Copyright (C) 2012 Queen Mary University of London (http://ccmi.eecs.qmul.ac.uk/) fiore@0: fiore@0: This program is free software: you can redistribute it and/or modify fiore@0: it under the terms of the GNU General Public License as published by fiore@0: the Free Software Foundation, either version 3 of the License, or fiore@0: (at your option) any later version. fiore@0: fiore@0: This program is distributed in the hope that it will be useful, fiore@0: but WITHOUT ANY WARRANTY; without even the implied warranty of fiore@0: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the fiore@0: GNU General Public License for more details. fiore@0: fiore@0: You should have received a copy of the GNU General Public License fiore@0: along with this program. If not, see . fiore@0: */ fiore@0: package uk.ac.qmul.eecs.ccmi.activities; fiore@0: fiore@0: import android.app.Activity; fiore@0: import android.content.Intent; fiore@0: import android.os.Bundle; fiore@0: fiore@0: /** fiore@0: * Splash screen Activity. Shows the splash screen for {@code SPLASH_DELAY} millisecond fiore@0: * and then starts the main Activity fiore@0: */ fiore@0: public class CcmiSplashActivity extends Activity { fiore@0: /** fiore@0: * number of millisecond the splash is displayed before starting the main Activity fiore@0: */ fiore@0: public static final int SPLASH_DELAY = 2000; fiore@0: private long ms=0; fiore@0: private boolean splashActive = true; fiore@0: private boolean paused=false; fiore@0: fiore@0: /** Called when the activity is first created. */ fiore@0: @Override fiore@0: protected void onCreate(Bundle savedInstanceState) { fiore@0: super.onCreate(savedInstanceState); fiore@0: setContentView(R.layout.splash_screen); fiore@0: Thread t = new Thread() { fiore@0: @Override fiore@0: public void run() { fiore@0: try { fiore@0: while (splashActive && ms < SPLASH_DELAY) { fiore@0: if(!paused) fiore@0: ms=ms+100; fiore@0: sleep(100); fiore@0: } fiore@0: } catch(Exception e) {e.printStackTrace();} fiore@0: finally { fiore@0: Intent intent = new Intent(CcmiSplashActivity.this, CcmiEditorAppActivity.class); fiore@0: startActivity(intent); fiore@0: finish(); fiore@0: } fiore@0: } fiore@0: }; fiore@0: t.start(); fiore@0: } fiore@0: fiore@0: /** fiore@0: * Pressing the back button on the splash screen doesn't kill the activity. The user must wait for the fiore@0: * main activity to be displayed before exiting the application. fiore@0: */ fiore@0: @Override fiore@0: public void onBackPressed() {} fiore@0: } fiore@0: fiore@0: