我试图在运行时获得DialogFragment
的宽度,我尝试了两种失败的方法。
首先:在创建对话框后的onCreateDialog
内
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
...
...
AlertDialog dialog = builder.create();
width = dialog.getWindow().getAttributes().width;
return dialog;
}
width
设置为-1
第二
public void onStart() {
width = getDialog().getWindow().getAttributes().width;
}
width
设置为-2
答案 0 :(得分:2)
使用ViewTreeObserver
onCreateDialog
解决了问题