2017-06-19 11 views
0

私の反応ネイティブアプリケーションがロードされる前に表示されるAndroidスタジオにスプラッシュ画面を作成しました。 This is the guide I followedAndroidスタジオからのメインアクティビティとネイティブの反応後の遷移

実際のスプラッシュ画面は問題なく動作しますが、アプリケーションが読み込まれてスプラッシュ画面から実際の反応するネイティブアプリケーションに切り替わると、2つの画面間の遷移はほとんどありません(コールドスタート時)。彼らは非常に速く急激に変化します。

他に誰かがこれを経験していますが、これを解決する方法はありますか?

答えて

0

これは実際にスプラッシュ画面を表示する正しい方法(ベストプラクティス)です。ユーザーを不必要に待たせる必要はありません。しかし、それでもまだ、あなたは、その後、数秒間スプラッシュ画面を表示するために

方法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

あなたは、フルスクリーンモーダルを作成し、メイン画面の内容がロードされるまで、メイン画面上に表示することができます。意味のあることが起こるまでユーザーが待つことになるので、このソリューションはより良いと感じています。しかし、コンテンツの読み込みに時間がかかった場合は、何か意味のあるもの(画面からスプラッシュではなくアプリからのコンテンツ)を表示した方が良い場合は、コンテンツをバックグラウンドで読み込んでから画面を更新してください。

関連する問題