166

これは単純な作業のはずですが、何らかの理由でDialogFragmentのタイトルを設定する方法を見つけることができます。(オーバーロードを使用してダイアログの内容を設定していますonCreateView)。

DialogFragmentデフォルトのスタイルはタイトルの場所を残していますが、それを設定するためのメソッドがクラスに見つかりません。

メソッドを使って内容を設定するとなぜかタイトルが魔法のように設定されるonCreateDialogので、これは仕様なのか、onCreateViewオーバーロードで設定する特殊な仕掛けがあるのだろうか。

4

6 に答える 6

316

使用できますgetDialog().setTitle("My Dialog Title")

ちょうどこのような:

public static class MyDialogFragment extends DialogFragment {
    ...
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        // Set title for this dialog
        getDialog().setTitle("My Dialog Title");

        View v = inflater.inflate(R.layout.mydialog, container, false);
        // ...
        return v;
    }
    // ...
}
于 2011-04-07T22:25:45.137 に答える
75

onCreateDialog作品に直接タイトルを上書きして設定しますDialogか?このような:

@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
    Dialog dialog = super.onCreateDialog(savedInstanceState);
    dialog.setTitle("My Title");
    return dialog;
}
于 2011-03-04T13:22:48.307 に答える