How to display the welcome screen in Android?

Hi, I need a screen that should appear within 2-3 seconds with my logo, and then it should go to the main program.

How to implement this?

+3
source share
3 answers

Here is a simple splashScreen implementation:

public class SplashScreen extends Activity {


    private Handler mHandler;

    private long delay = 1000;
    private int i = 0;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_splash_screen);

        Timer timer = new Timer();
        timer.schedule(task, delay);
    }


    TimerTask task = new TimerTask() {
        @Override
        public void run() {

        Intent in = new Intent().setClass(SplashScreen.this,
                        LoginActivity.class).addFlags(
                        Intent.FLAG_ACTIVITY_CLEAR_TOP);
                startActivity(in);
        finish();

        }
    };

}

The delay variable indicates the pause time of your splashScreen activity before switching to another one.

+3
source
+1
source

here I have attached the full code for the splash screen, which initializes the location based application.

public class splashScreen extends Activity {

private LocationManager locationManager = null;
private LocationListener locationListener = null;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);     
    setContentView(R.layout.splash);
    locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
    locationListener = new MyLocationListener();
    // Start the Animation of SplashScreen
    new Handler().postDelayed(new Runnable() {
        public void run() {
            ImageView imageView = (ImageView) findViewById(R.id.splashImageView);
            AnimationDrawable animation = (AnimationDrawable) imageView.getDrawable();
            animation.start();
        }
    }, 500);
    // Obtain user location
    new Handler().post(new Runnable() {         
        public void run() {
            locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
            String locationProvider = LocationManager.GPS_PROVIDER;
            locationManager.requestLocationUpdates(locationProvider, 1000, 0, locationListener);
            try { wait(5000); } catch (Exception e) {}
            if(locationManager != null) {
                locationManager.removeUpdates(locationListener);
            }
        }
    });
    // Start the Tabs screen.
    new Handler().postDelayed(new Runnable() {
        public void run() {
            Bundle extras = new Bundle();
            extras.putDouble(Constants.LATITUDE, ((MyLocationListener)locationListener).getLat());
            extras.putDouble(Constants.LONGITUDE, ((MyLocationListener)locationListener).getLng());
            Intent intent = new Intent(splashScreen.this, MainActivity.class);
            intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            intent.putExtras(extras);
            startActivity(intent);
        }
    }, 5000);
}

}

0
source

Source: https://habr.com/ru/post/1792030/


All Articles