2013-11-14 35 views
1

Hy,帶意向的活動

我正在做一個簡單的秒錶。當我點擊「開始」按鈕時,狀態欄中會顯示一條通知。當我在我的秒錶停止的通知,並點擊重置爲0 這裏是通知的意圖:

  Intent msgIntent = new Intent(this, myActivity.class); 
      msgIntent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); 
      PendingIntent intent = PendingIntent.getActivity(myActivity.this, 
        0, msgIntent, 
        Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); 
+3

你的問題是什麼? –

+0

android:launchMode =「singleTop」in Activity Manifest shoudl已經解決了這個問題。 – Benjamin

+0

android:launchMode =「singleTop」解決了我的問題,謝謝! –

回答

0

如果添加如預期國旗沒有工作,實現自己的需求最簡單的方法是在清單文件中定義特定Activity的launchMode。例如:

<activity 
     android:name=".myActivity" 
     android:label="@string/app_name" 
     android:launchMode="singleTop" > 
0

試試下面的虛擬:

 Intent msgIntent = new Intent(this, myActivity.class); 
     msgIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP); 
     msgIntent.putExtas(STOP, true); 
     PendingIntent intent = PendingIntent.getActivity(myActivity.this, 
       0, msgIntent, 
       PendingIntent.FLAG_CANCEL_CURRENT); 

     //In your activity: 
     onCreate() { 
      if(getIntent().getBoolean(STOP)) 
       then stop 
     } 

     onNewIntent(Intent _intent) { 
      if(_intent.getBoolean(STOP)) 
       then stop 
     } 
0

我用這個方法,而問題是原來決心,希望這也可以幫助你;

Intent intent = new Intent(Intent.ACTION_MAIN); 

intent.addCategory(Intent.CATEGORY_LAUNCHER); 

intent.setClass(this, Main.class); 

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);