これは実際にスプラッシュ画面を表示する正しい方法(ベストプラクティス)です。ユーザーを不必要に待たせる必要はありません。しかし、それでもまだ、あなたは、その後、数秒間スプラッシュ画面を表示するために
方法1
をしたい場合は、新しいアクティビティを作成することができ、そこにタイムアウトを配置し、あなたの主な活動を開始します。 this postに従うことができます。しかし、これもスプラッシュ画面で待つことはありません。それは次のようにMainActivityを開始する前に、待って(私はリンクされているポストから)あなたのスプラッシュ活動にタイムアウトを追加するには:
public class SplashActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
new Handler().postDelayed(new Runnable() {
public void run() {
Intent intent = new Intent(SplashActivity.this, MainActivity.class);
startActivity(intent);
finish();
}
}, 1000);
}
}
ここで1000はミリ秒単位の時間です。
これをアンドロイドエミュレータで実行すると、this issueに実行される可能性があります。あなたは解決のためにthis答えを見ることができます。
方法2
あなたは、フルスクリーンモーダルを作成し、メイン画面の内容がロードされるまで、メイン画面上に表示することができます。意味のあることが起こるまでユーザーが待つことになるので、このソリューションはより良いと感じています。しかし、コンテンツの読み込みに時間がかかった場合は、何か意味のあるもの(画面からスプラッシュではなくアプリからのコンテンツ)を表示した方が良い場合は、コンテンツをバックグラウンドで読み込んでから画面を更新してください。