2017-01-21 10 views
1

1つのアクティビティからインテントでバンドルを受け取り、うまく動作するアクティビティがあります。しかし、同じアクティビティは、バンドルを提供しない別のアクティビティによって呼び出される必要があります。したがって、アプリケーションは、すべてのインテントでバンドルを待つnullポインタ例外をスローします。それで、特定のアクティビティから呼び出されたときだけ、バンドルを探すようにアクティビティをコーディングする方法。あるいは、送信者固有のデータを渡す別の方法がありますか? Bundlenullない場合特定のアクティビティだけからバンドルを処理するアクティビティをコーディングする方法はありますか?

+0

コードを表示し、使用する前にバンドルがヌルに設定されていないかどうかを確認するだけで済みます。 –

+0

バンドルのヌルチェックを追加できます。 – akash93

答えて

0

はちょうどそれをアクセスする前に確認してください。将来的にあなたが他の活動をしたい場合は、あなたがいずれかを行うことができ

Bundle bundle = getIntent().getExtras(); 
if(bundle != null) { 
    // do whatever you wanted to do here 
} 

がさらによりも、同じActivityに他の値やデータ型を送信しますnullチェック:

if (bundle != null) { 
    if(bundle.getString("key_specific_to_previous_activity") != null){ 
     // do something for that specific activity 
    } 
} 
関連する問題