2017-12-25 25 views
-2

私はいくつかの助けが必要です。私は私のアプリに問題があります。私は最初にスプラッシュスクリーンを置きたい。私は以前にそれをしてきました。私はコード、レイアウト、そしてすべての作品を新しいプロジェクトに完全に作りました!コードをアプリケーションの電話とレイアウトで実行すると、アプリケーションはエラーなく完全に実行されます。しかし、私は私の携帯電話でそれを開くと、それは停止し、それを開くことはありません!あなたは何かを提案できますか?アプリ起動時のスプラッシュ画面

私のアンドロイドのmanifest.xml:

 android:name=".activities.SplashScreenActivity" 
     android:label="@string/splash"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
+0

エラーログを表示してください。 – KeLiuyue

+0

私はアンドロイドスタジオで何のエラーもありません。私のアプリケーションは、私のアプリケーションが開いたときにクラッシュする私のアプリケーションで開いて行くときにアプリは正常に実行されます。そして、私のスプラッシュ画面を新しいプロジェクトに修正しようとしました。 –

答えて

0

があなたのSplashScreenActivityからメインアクティビティを起動すると仮定。あなたのSplashScreenActivityののonCreate()で

は:

Intent intent = new Intent(SplashScreenActivity.this, MainActivity.class); 
startActivity(intent); 
finish(); 

最初の2行は、テントを介してメインアクティビティを起動し、あなたがMainActivityからそれに戻って行くことができないので、3行目はSplashScreenActivityを殺します。

+0

意図インテント=新しいインテント(SplashScreenActivity.this、LoginActivity.class); startActivity(インテント); SplashScreenActivity.this.finish(); –

+0

これは私のコードですLoginActivityは私のスプラッシュ画面の後に開きたい次のレイアウトです –

+0

SplashScreenActivity.this.finish();冗長です。 – ReverseEffect

0
public class SplashScreenActivity extends AppCompatActivity { 
private int SLEEP_TIMER = 3; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 

    setContentView(R.layout.activity_splash_screen); 

    View imageView = findViewById(R.id.imageView); 

    Animation animation = AnimationUtils.loadAnimation(getApplicationContext(),R.anim.fade); 

    imageView.startAnimation(animation); 
    getSupportActionBar().hide(); 
    LogoLauncher logoLauncher = new LogoLauncher(); 
    logoLauncher.start(); 


} 

private class LogoLauncher extends Thread { 
    public void run() { 
     try { 
      sleep(1000 * SLEEP_TIMER); 
     } catch (InterruptedException e) { 
      e.printStackTrace(); 
     } 

     Intent intent = new Intent(SplashScreenActivity.this,LoginActivity.class); 
     startActivity(intent); 
     SplashScreenActivity.this.finish(); 
    } 
} 
関連する問題