我在this answer中找到了这段代码:
super.onCreate(savedInstanceState);
super.setIntegerProperty("splashscreen", R.drawable.splash);
super.loadUrl("file:///android_asset/www/index.html",5000);
它有效,但像这样,结果是:
启动画面5秒
应用程序就绪之前的黑屏
index.html
所以我想知道是否有机会运行这个
super.loadUrl("file:///android_asset/www/index.html");
作为一些现成功能的回调,有办法吗?
-EDIT-
将其更改为10秒并不会显示黑屏,但我想将index.html与应用程序准备就绪的时刻完全相同(不会更快,不会更晚:D)
答案 0 :(得分:1)
// Show LOGO ,start to MainActivity that watting for some seconds
new Handler().postDelayed(new Runnable() {
public void run() {
/*
* Create an Intent that will start the Main WordPress
* Activity.
*/
//
RedirectMainActivity();
}
}, 4000);
答案 1 :(得分:0)
Android不提供任何原生API来处理Splash Screen
但您可以使用Handler
来显示虚假的闪屏。
//load the splash screen
super.loadUrl("file:///android_asset/www/someSplashScreen.html");
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
// splash screen successfully timeout
//start new activity or load html layout
super.loadUrl("file:///android_asset/www/index.html");
}
}, 4000);//timeout after 4 sec
答案 2 :(得分:0)
你有没试过这个?
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
public class Splash extends Activity {
private final int SPLASH_DISPLAY_LENGHT = 1000;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.splashscreen);
/* New Handler to start the Menu-Activity
* and close this Splash-Screen after some seconds.*/
new Handler().postDelayed(new Runnable(){
@Override
public void run() {
/* Create an Intent that will start the Menu-Activity. */
Intent mainIntent = new Intent(Splash.this,Menu.class);
Splash.this.startActivity(mainIntent);
Splash.this.finish();
}
}, SPLASH_DISPLAY_LENGHT);
}
}
答案 3 :(得分:0)
在指向上一个问题的链接中,还有一个指向Blog
的链接据称,对于PhoneGap的1.8.0版本,您可以拨打navigator.splashscreen.hide();
检查博客(阅读所有内容,因为前两段有点误导)。