我刚刚看到了这个问题:如何制作Android启动画面? 但是,我不想像最佳答案中所述那样添加固定延迟,而是希望在MainActivity(带有MapFragment)加载时保持闪屏。
public class SplashScreen extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
Thread t = new Thread(new Runnable() {
@Override
public void run() {
Intent i = new Intent(SplashScreen.this, MainActivity.class);
startActivity(i);
synchronized (this) {
try {
wait(3000);
System.out.println("Thread waited for 3 seconds");
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
});
try {
t.start();
t.join();
finish();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
我添加了wait(3000)行,因为我之前注意到线程活动的时间很短。但是,如果我让它等待更长时间,那么只会有一个持续更久的黑屏。由于某些原因,启动屏幕活动无法显示ImageView。我该怎么办?谢谢。