【Android】DialogFragment に値を渡す方法(Java編)
この記事では DialogFragment に値を渡す方法を紹介します。
DialogFragment には
- String 型
 - 基本型
 - 配列
 - ArrayList
 
などの値を渡すことができます。
このサンプルでは String 型と int 型の値を渡して、ダイアログに表示してみます。

ダイアログの基本的な使い方は以下の記事をお読み下さい。
>> ダイアログを表示する方法① 基本型(Java 編)
開発環境
| Android Studio | Hedgehog | 2023.1.1 | 
|---|---|
| Android Emulator | Pixel 3a (API 34) | 
| minSdk | 21 | 
| targetSdk | 34 | 
ファイル名について
このサンプルでは
- MainActivity.java
 - MyDialogFragment.java
 
にコードを書きます。
MyDialogFragment.java の作成方法は以下の記事をお読みください。
>> ダイアログを表示する方法① 基本型(Java 編)
解説
Step1:値を渡す
ダイアログを表示する部分に値を渡すためのコードを追加します。(12~15行目)
Bundle オブジェクトを使って値を渡します。
args.putXXXXX(キー, 値);キーは値を取り出す時に使う文字列です。
ここでは String 型と int 型の値を渡しましたが、それ以外の場合は以下のメソッドを使います。
- boolean 型 → putBoolean
 - float 型 → putFloat
 - int 型の配列 → putIntArray
 - String 型の ArrayList → putStringArrayList
 
Step2:値を受け取る
MyDialogFragment.java で値を受け取ります。(7・8行目)
getArguments().getXXXXX(キー, 初期値);putXXXXX メソッドで使ったキーを使って値を取り出します。
初期値は値を受け取ることができなかった場合の値です。
値を渡した時と同じように、受け取る値によってメソッド名が変わります。
- boolean 型 → getBoolean
 - float 型 → getFloat
 - int 型の配列 → getIntArray
 - String 型の ArrayList → getStringArrayList
 
完成
以上で完成です。

その他のダイアログの使い方は以下の記事をお読みください。



