要設置DialogFragment的樣式,你可以按照以下步驟操作:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="CustomDialogStyle" parent="Theme.AppCompat.Light.Dialog">
<item name="android:background">@android:color/white</item>
<item name="android:textColor">@android:color/black</item>
<item name="android:windowBackground">@android:color/transparent</item>
<!-- 其他樣式屬性 -->
</style>
</resources>
onCreateView()
方法,為DialogFragment設置樣式。例如:public class MyDialogFragment extends DialogFragment {
@NonNull
@Override
public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {
Dialog dialog = super.onCreateDialog(savedInstanceState);
dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
return dialog;
}
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_my_dialog, container, false);
// 設置自定義樣式
int style = R.style.CustomDialogStyle;
setStyle(DialogFragment.STYLE_NORMAL, style);
return view;
}
}
在上述代碼中,setStyle(DialogFragment.STYLE_NORMAL, style)
方法用于為DialogFragment設置自定義樣式。
MyDialogFragment dialogFragment = new MyDialogFragment();
dialogFragment.show(getSupportFragmentManager(), "dialog_fragment_tag");
通過調用show()
方法來顯示DialogFragment,并傳遞FragmentManager和一個標簽作為參數。
這樣就可以設置和使用自定義的DialogFragment樣式了。記得在布局文件中定義對話框的界面元素(例如按鈕、文本框等等)和布局。