2014-09-30 63 views
0

我的應用程序允許用戶在各個領域輸入信息,拍照,然後將所有信息發送到預定的電子郵件地址。成功發送郵件後返回首頁活動Android

一旦他們發送了電子郵件,我想顯示一條感謝信(可能通過Toast),然後將它們帶回我的家庭活動。要使用iOS專業術語,如何在成功發送電子郵件時對另一個屏幕執行segue操作。

編輯: 我試圖實施提供的解決方案,但不是我的應用程序只是移動到下一個場景,而不是發送電子郵件。我有沒有實施它不正確?

if (Witness_response == "Yes"){ 
       Intent emailIntent = new Intent(Intent.ACTION_SEND); 
       emailIntent.putExtra(Intent.EXTRA_EMAIL, new String[]{"[email protected]"}); 
       emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Dob in a Hoon Report(Y)"); 
       emailIntent.putExtra(Intent.EXTRA_TEXT, "Hoon report has been recieved " + emailBody); 
       emailIntent.setType("image/*"); 
       Uri uri = Uri.fromFile(f); 
       emailIntent.putExtra(Intent.EXTRA_STREAM, uri); 
       emailIntent.setType("message/rfc822"); 
       startActivity(Intent.createChooser(emailIntent, "Choose email client...")); 
       Intent ReturnIntent = new Intent(dob_in_a_hoon.this, HomeScreen.class); 
       dob_in_a_hoon.this.startActivity(ReturnIntent); 

回答

1

這真的取決於你的應用程序是如何構建的,如果它是基於片段交換構建的,你會想要加載所需的片段。否則,你可以這樣開始

Intent myIntent = new Intent(CurrentActivity.this, NextActivity.class); 
myIntent.putExtra("key", value); //Optional parameters 
CurrentActivity.this.startActivity(myIntent); 

一個新的intent(活動),你甚至可以只調用onBackPressed,將帶你回到以前的活動脫身。

+0

有沒有一種方法可以實現,一旦用戶發送電子郵件?即在我的電子郵件意圖的結尾? – scb998 2014-09-30 02:18:11

+0

它執行意圖而不發送電子郵件。看到我編輯的問題,我的電子郵件意圖和我已經實施它 - 我可能做錯了。 – scb998 2014-09-30 04:07:25

+0

啊,是的,我想我看到了問題。您應該使用異步任務發送電子郵件http://developer.android.com/reference/android/os/AsyncTask.html,並且在onPostExecute中您應該回復原始活動以啓動新的意圖。如果這沒有意義,請告訴我,我會進一步解釋。 – ed209 2014-09-30 15:16:09

0

這個片段可以移動從活動B到活動答:

Intent i = new Intent(getApplicationContext(), HomeActivity.class); 
    startActivity(i); 

或者像ed209說,你可以通過調用onBackPressed法回到過去的活動。

相關問題