2016-06-08 68 views
-1

我試圖從外部活動上下文中使用Intent啓動電子郵件應用程序,並且我已經設置了該標誌。上下文需要FLAG_ACTIVITY_NEW_TASK標誌,但我已經設置了標誌

有什麼建議嗎?

  public void onSwipeLeft() { 
      Intent i = new Intent(Intent.ACTION_SEND); 
      i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 

      try { 
       i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
       i.setType("message/rfc822"); 
       i.putExtra(Intent.EXTRA_EMAIL, new String[]{addressList[position]}); 
       aContext.startActivity(Intent.createChooser(i, "Send mail...")); 
      } catch (android.content.ActivityNotFoundException ex) 

      } 
     } 

這裏的錯誤:

enter image description here

+0

上下文的背景下= MyApplication.this.getApplicationContext(); –

+0

嘗試設置標誌後額外? (順便提一下,你爲什麼要設置兩次國旗?) –

+0

請將您的錯誤文字而不是圖像 – ppperry

回答

0

Intent.createChooser(i, "Send mail...")返回一個新的意圖,而不是你原來的i

設置由Intent.createChooser(i, "Send mail...")

Intent intent = Intent.createChooser(i, "Send mail..."); 
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    aContext.startActivity(intent); 

更多信息有關此問題的返回的意圖的標誌:Context wants FLAG_ACTIVITY_NEW_TASK but I've already set that flag

+0

這是工作。感謝您的幫助@Adomas –

+0

很高興幫助! :) – Adomas

相關問題