【Android】DialogFragmentを継承したクラスでダイアログを画面一杯に表示させる


DialogFragment便利なんでダイアログは基本これで実装することにしてたんだけどいざタブレットで表示するときにダイアログがちっちぇーなーって思ってた。

onCreateViewでsetLayoutを指定してたけどこれは間違いらしい。

正しくはこちら

public class SubMenuDialog extends DialogFragment implements OnClickListener {

.. 省略

	@Override
	public void onStart() {
		super.onStart();

		// ダイアログを画面一杯に表示する
		if (getDialog() != null) {
			getDialog().getWindow().setLayout(
					ViewGroup.LayoutParams.MATCH_PARENT,
					ViewGroup.LayoutParams.WRAP_CONTENT);
		}
		
	}

}

onStartのところでsetLayoutしたらきちんと縦幅、横幅が反映されるようになった。

コメントを残す

メールアドレスが公開されることはありません。