Set first screen/activity running my app

Hi! I am creating my first simply app using App Inventor. I simply would like to know how to set the first screen/activity to show running the app. I have added a splash screen with a logo and a clock counting 2000ms before loading the main menu page/screen; but I have created the splash screen after the menu page.
How can I set the splash screen as first one to show? Trying my work in progress on my smartphone, it shows the screen I have on top in the web page of App Inventor, so I don’t know which will really be the first screen I’ll see creating the APK.

Hi

First of all, consider dropping the idea of a splash screen - many Users just find them annoying.

Since Screen1 is the ‘King’ in App Inventor, it is the first one to display. Sounds like Screen1 is your Menu Page.

If you really need a Splash Screen, what to do next depends on how many Screens you have already created because the ideal world scenario would be to use Virtual Screens. (Screen1 being the ‘real’ Screen, hosting Virtual Screens that consist of Vertical Arrangements (Containers), displayed or not displayed as required).

To just use all ‘real’ Screens:

  1. Set everything on Screen1 as invisible (Components hosted by Arrangements are invisible when their Arrangement is invisible).
  2. In the ‘when Screen1 Initialize’ Block, Call the Splash Screen (open another screen Block).
  3. In the Splash Screen Timer Block, add a ‘close screen’ Block.
    When the Splash has finished, the User will be auto-returned to Screen1.
  4. In Screen1, via a ‘when Screen1 Other Screen Closed’ Block, make the Screen1 components visible.
1 Like

Thanks, I’ll try the way with real screens… :wink: I simply hope this “trick” works good on all devices.

Something works bad… After step 3 of your list, I can’t add blocks in in Screen1: App Inventor send me an error I can report as bug, trying to click in Screen1 in Blocs list on the left… :frowning_face:

This is why you should use virtual screens :wink:

A simple splash, without a timer

simpleSplash.aia (52.7 KB)

A simple splash with timer

simpleSplash_timer.aia (52.9 KB)

1 Like

A simple splash with timer and progress dialog

simpleSplash_timer_progress.aia (53.1 KB)

1 Like

A simple splash using Canvas

simpleSplash_Canvas.aia (53.0 KB)

2 Likes

Buenos días,
Me podrían ayudar a poner una pantalla como la primera pantalla al abrir la aplicación?

Gracias.

@alvaropozas_Pozas @Gaspare_Pero To make it so that first screen shows up first when the user opens the app, go to the screen that opens up first when the user opens the app and press ctrl+c (Command+c on Mac) and create another screen and press ctrl+v (Command+v on Mac). Then press ctrl+c (Command+c on Mac) on the screen that you want to open up first and press ctrl+c (Command+c on Mac) and go to the screen that opens up first and press ctrl+v (Command+v on Mac). Then, you can delete the duplicate screen/the screen that the first screen was on and you have successfully changed the app so your first screen opens up first when the user opens your app.

I agree with Chris, you should drop the splash screen idea as it has been really frustrating for me and a lot of other users.

Hope this helps!

2 Likes