I want to make a SplashScreen before the main activity starts. I've been carefully replicating this tutorial but there are still problems.
In my code I have an animation in SplashActivity. But my MainActivity has so many elements to initialize that the animation in SplashScreen Activity is lagging a lot.
Is there any possible way to manage this? I tried to use runOnUIThread in the onCreate method of MainActivity, but that made the problem even worse.
actually with 4.4 OS Google is asking to do away with splash screens.
You are better off putting some dummy screen -> splash screen -> main activity. Here dummy screen with no have anything in it.
Provided you want splash screen with no action bar. If you add empty action bar to splash screen you can keep as it is
splash screen -> main activity.
Time lag is due to android takes time to start activity with no action bar at the start of the application.
Related
I know that there are 2 common methods of implementing splash screens:
Using activity and Timers
Using a Launcher Theme
Using a Launcher theme is the preferred way because I need splash while cold start.
But suppose I need to implement a splash screen with animated logo, text and background.
Is it possible using the Launcher Theme to create animated splash screen or animations is quite not possible in this method and I will have to create separate activity for my splash screen.
Please help me)
You could use Android's SplashScreenApi to launch your app.
This includes an into-app motion at launch, a splash screen showing your app icon, and a transition to your app itself. This provides a seamless transition into our app -
https://developer.android.com/guide/topics/ui/splash-screen
I have a splash screen activity which is supposed to launch a landing activity and finish itself. When I enable activity transitions, with a simple slide animation as both enter and exit animations, I see that the splash activity finishes before the landing activity slides up completely. This causes an intermediate phase when users see the Android launcher screen.
I tried using finishAfterTransition() as suggested here, but no luck. Is this a bug in the support library? Or am I not supposed to use transitions on activities which may finish after launching a new activity?
The method overridePendingTransition() and animation parameters R.animator.fade_in, R.animator.fade_out have worked for some.
It is described here
I have a blue image as splash screen for startup.
However inside my app when an open keyboard is closed it shows the background imagine of the splash screen for a brief second which looks very weird.
windowSoftInputMode is set to
android:windowSoftInputMode="adjustResize"
I think adjustResize is right.
What could I do to solve the problem? Why is the splash screen even in the background?
No clue if you do this already, but for activities like a splash screen where you only use it once and returning isn't wanted, remember to call finish(). If you finish the activity, it will not be in the activity stack. Try adding finish() after the intent that takes you away from the splash screen
My app is built with the support ActionBar to allow for a standard UI between Android 4.x and Android 2.3, and for the most part this works fine. However, the title is not displayed in the ActionBar when I first launch the app under Android 2.3.
If I rotate the device to landscape mode, then the title appears in the ActionBar. After rotating the device back to portrait mode, the title is still visible.
What could be causing this? When I launch a different Activity in the app, that Activity's label (as specified in AndroidManifest.xml) is correctly displayed in the ActionBar.
EDIT: I've tracked this down to a splash screen Activity that is launched from the main activity's onCreate method. I can probably work around this be rearchitecting the app to launch with the splash screen as its default launch activity and then launch the main activity, but are there any other workarounds?
Unfortunately, I don't think "remove the splash screen" will be acceptable.
As far as I can tell, this issue is a bug in Android 2.3. It seems like this problem was caused by my launch Activity starting another Activity (the splash screen) from its onCreate method. Moving the splash screen launch to onStart or onResume did not help to resolve this issue.
I was able to work around the issue by replacing the internals of my launch Activity with the splash screen and creating a new "real main Activity" that the splash screen Activity launches.
It was important to keep the same class as the launch Activity because the app has already been released, and changing the class of the launch Activity would break shortcuts for users who have already installed the app.
How can i change the screen of an activity when pressing any button on an android phone that takes one away from the running app.
I'm trying to get a blank screen to show up on the "recents" screen, instead of a snapshot of the app.
You can use this option and check if it helps you meet your need.
android:excludeFromRecents="true"
Add this to your activities in the application manifest if you do not want the app to be shown in the recent apps list. One drawback is that you would not be able to resume the app from the Recents list. Not sure if this is what you need.
The other way is to have a 'Blank Activity', which you start when your actual activity pauses. You can then finish the 'Blank Activity' on its Resume. This way, you will have your app shown on the Recents list, but with a blank screen.
You can call finish() for activity but that will kill activity. I think that will leave blank screen. Or destroy(). Try both respond with results.
you might want to change the onpause() or onclose() functions of your app. they are the last thing android execute before leaving,therefor you can change the aspect off your app just before you leave it
EDIT :
Maybe if you create PopupWindow and set it to full screen, and color black when exiting no preview would be shown, but app would still be running (idea of user DjDexter5GH) in the onpause() and onclose() functions. therefgor,when you leave,a black(or whatever you want) screen is pushed in front
you can then close it in the onrestart(is it called this?)