Enumを使ってBundleやIntentのキーを管理する
AndroidではIntentを発行するときやFragmentを生成するときに、引数として値を渡す時があります。
キーはよくprivate final static~などと定数として定義することが多いですが、これは値が同一になるのでもしかしたら衝突してしまうかもしれません。
上記の例だと変数名こそは別ですが、値は別なので一意性がありません。これでは以下の様にIntentを発行した時値が上書きされてしまいます。
これでは引数のfooが上書きされてしまいます。
このように定義して以下のように使用します。
こうすることで一意性が保たれ、キー名が衝突することがなくなります。
Intentのキー名、Bundleのキー名だけでなく、DialogFragmentのタグ名にも使うことが可能だと思います。