メソッドgetIntent().getExtras().getBoolean("key")
を実行せずに使用すると、値はどうなりますか?.putExtra("key",boolean)
ブール値であるため受け入れられない!= null
ので、要点はありますか?
メソッドgetIntent().getExtras().getBoolean("key")
を実行せずに使用すると、値はどうなりますか?.putExtra("key",boolean)
ブール値であるため受け入れられない!= null
ので、要点はありますか?
私の解決策:
boolean defaultValue = false;
boolean yourValue = getIntent().getBooleanExtra(YOUR_EXTRA, defaultValue);
putExtra を作成しない場合、インテントには決定したデフォルト値が含まれます。
私はあなたを助けたことを願っています!
私はそれが古い投稿であることを知っていますが、遅くなったほうがいいと思います。このようなものが動作するはずです:
Boolean booleanValue = false; // Set default value
Bundle bundle = getIntent().getExtras();
if (bundle.containsKey("key")) { // Check if key exists
booleanValue = bundle.getBoolean("key"); // Update variable accordingly
}
さらに簡潔にしたい場合は、次のようにします。
Bundle bundle = getIntent().getExtras();
Boolean booleanValue = bundle.containsKey("key") ? bundle.getBoolean("key") : false;
参考書によると
public boolean getBoolean (文字列キー)
API レベル 1 で追加されました。指定されたキーに関連付けられた値を返します。指定されたキーに目的のタイプのマッピングが存在しない場合は false を返します。
したがって、false が返されます。