我正在使用DialogFragment
的Android应用程序。我想在打开对话框片段后面设置自己的颜色。如何在Android上的对话框片段后面设置自己的颜色?
现在它显示为浅黑色。
请看这张截图enter image description here
我正在使用DialogFragment
的Android应用程序。我想在打开对话框片段后面设置自己的颜色。如何在Android上的对话框片段后面设置自己的颜色?
现在它显示为浅黑色。
请看这张截图enter image description here
我没有尝试这样做我自己。但是你可以使用样式来尝试它。设置android:windowIsFloating
为false,android:windowBackground
到我的自定义颜色的对话风格:
styles.xml
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="MyDialog" parent="@android:style/Theme.Dialog">
<item name="android:windowBackground">@color/orange_transparent</item>
<item name="android:windowFrame">@null</item>
<item name="android:windowIsFloating">false</item>
<item name="android:gravity">center</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowTitleStyle">@null</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
</style>
</resources>
MyDialogFragment
public class MyDialogFragment extends DialogFragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setStyle(DialogFragment.STYLE_NO_TITLE, R.style.MyDialog);
}
}
I'haven't试过没,但你可以尝试这样的事情:
dialogFragment.getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(<your color>));
它设置了对话框片段的背景,但没有设置半透明的背景 –
那么,你想改变对话框背后的半透明黑色? – Shaishav
@Shaishav yup。请帮忙 –
用你的片段布局占据整个屏幕可能更容易,把它设置为你想要的颜色,然后居中放置另一个smallwer布局,中间是你想要的视图。 – Bonatti