2017-03-03 2 views
0

長時間実行しています。スレッド内で私はこの問題は、私は別のアプリケーションとのスレッドが終了を実行すると、その活動は、画面の上部に表示されているこの他のアプリを使用しているときにAndroidのアクティビティが表示されます

@Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 


     new Thread(new Runnable() { 
      @Override 
      public void run() { 

       try { 
        Thread.sleep(5000); 
       } catch (InterruptedException e) { 
        e.printStackTrace(); 
       } 

       runOnUiThread(new Runnable() { 
       @Override 
       public void run() { 
        startActivity(new Intent(MainActivity.this,MainActivity.class)); 
       } 
      }); 
      } 
     }).start(); 
    } 

のような新しい活動を開始します。その活動を一番上に立たないようにするにはどうしたらいいですか?

+0

startActivity(新しい意図(MainActivity.this、MainActivity.class)); 'なぜあなたの現在のアクティビティをもう一度開始しますか? –

+0

これは例です。実際のケースで私は別のものを始める – Rainmaker

答えて

0

..

Handler splashHandler; 
splashHandler = new Handler(); 

splashHandler.postDelayed(new Runnable() { 
     @Override 
     public void run() { 

       Intent loginIntent = new Intent(Splash.this, LoginActivity.class); 
       startActivity(loginIntent); 
       finish(); 

     } 
    }, 2000); 



@Override 
public void onBackPressed() { 
    super.onBackPressed(); 
    if (splashHandler != null) 
     splashHandler.removeCallbacksAndMessages(null); 
} 



@Override 
protected void onResume() { 
    super.onResume(); 
    if (splashHandler != null) 
     splashHandler.removeCallbacksAndMessages(null); 
} 
0

これは、「他のアプリ」からコンテキストを取得しているために発生します。ローカルアクティビティのコンテキストではなく、アプリケーションコンテキストを渡す必要があります。使用context.getApplicationContext()と

コードは次のようなものであるべき活動を開始するには、このコンテキストを使用し、その後、ローカル変数にそれを保存する:あなたが呼びたい

@Override 
protected void onPostExecute(List<VideoDataDescription> result) { 
    super.onPostExecute(result); 
    MainActivity.progressDialog.dismiss(); 

    context.startActivity(new Intent(context, MainActivity.class)); 
} 

}

それこのように:あなたは以下のように使用することができます

new MyTask(context).execute(); 
+0

は動作しません。同じ振る舞い – Rainmaker

関連する問題