2017-04-03 123 views
1

我有四個活動:四個活動不顯示吐司

活動A

private void addCard() { 
     Intent intent = new Intent(MainActivity.this, GetNumberActivity.class); 
     startActivityForResult(intent, REQUEST_CODE_CREATE); 
    } 

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    if (requestCode == REQUEST_CODE_CREATE) { 
     if (resultCode == RESULT_OK) { 
      if (data.hasExtra("data")) { 
       // Card has been create 
       Toast.makeText(getApplication(), "Karata została wygenerowana.", Toast.LENGTH_SHORT).show(); 
      } 
     } 
    } 
} 

活動B

Intent intent = new Intent(GetNumberActivity.this, ScanQrCodeActivity.class); 
       intent.putExtra(EXTRA_MESSAGE, uunitValue); 
       startActivityForResult(intent, REQUEST_CODE); 

然後在第二活動我將數據傳遞到所述第三活動。

活動Ç

Card card = new Card(path3, base32, nameCard, intervalTotp, passwordHotp, getDate(), expirationDate, hotpValue); 
            Intent intent = new Intent(ScanQrCodeActivity.this, Stage3Activity.class); 
            intent.putExtra("card", card); 
            startActivity(intent); 
finish(); 

活動d

Intent data = new Intent(Stage3Activity.this,MainActivity.class); 
       data.putExtra("data", card); 
       startActivityForResult(data, RESULT_OK); 

在按下上活動A按鈕,未圖示的吐司。

+0

你有沒有'的setResult()'地方? –

+0

閱讀關於從活動中獲取結果https://developer.android.com/reference/android/app/Activity.html#StartingActivities –

+0

嘗試使用Intent data = new Intent(); data.putExtra(「data」,card); setResult(RESULT_OK,data);完成();'而不是您的代碼在活動D –

回答

4

您需要如下

if (resultCode == RESULT_OK) { 
     if (requestCode == REQUEST_CODE_CREATE) { 
      if (data.hasExtra("data")) { 
       // Card has been create 
       Toast.makeText(getApplication(), "Karata została wygenerowana.", Toast.LENGTH_SHORT).show(); 
      } 
     } 
    } 

首先檢查RESULT_OK更新您的代碼,然後進一步進行

編碼快樂!

+0

廣告更新但沒有顯示吐司 – Ewelina

1

更換getApplication()this(當前活動的上下文中)

Toast.makeText(this.class, "Karata została wygenerowana.", Toast.LENGTH_SHORT).show(); 
+0

什麼顯示烤麪包 – Ewelina

+0

你什麼時候要烤麪包? –

+0

吐司應該顯示什麼時候去點擊Actitvty四 – Ewelina

0

使用getApplicationContext()而不是getApplication()makeText()方法

+0

什麼都不顯示吐司 – Ewelina