DialogFragment margin
时间: 2024-01-19 17:02:54 浏览: 174
DialogFragment对话框
DialogFragment的margin可以通过设置DialogFragment的style来实现。具体方法如下:
1. 在styles.xml文件中定义一个style,例如:
```
<style name="MyDialogFragmentStyle" parent="Theme.AppCompat.Light.Dialog">
<item name="android:windowIsFloating">true</item>
<item name="android:windowBackground">@color/white</item>
<item name="android:windowMinWidthMajor">80%</item>
<item name="android:windowMinWidthMinor">80%</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowCloseOnTouchOutside">true</item>
<item name="android:windowAnimationStyle">@style/DialogFragmentAnimation</item>
<item name="android:windowMaxWidth">600dp</item>
<item name="android:layout_margin">16dp</item>
</style>
```
2. 在DialogFragment的onCreateView方法中设置style,例如:
```
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_my_dialog, container, false);
getDialog().getWindow().setAttributes(getDialog().getWindow().getAttributes());
getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
getDialog().getWindow().setGravity(Gravity.CENTER);
setStyle(STYLE_NO_FRAME, R.style.MyDialogFragmentStyle);
return view;
}
```
在这个例子中,我们设置了android:layout_margin为16dp,这样就可以设置DialogFragment的margin了。你可以根据自己的需要调整这个值。
阅读全文