我正在尝试将自定义样式设置为(材料)对话框,但没有应用,它只是显示默认值(white)一个。<<<<<<<<<<<<
我已经检查了一些资源并搜索了谷歌搜索,但我以某种方式没有得到我想要的结果。
请注意,我是造型的新手。如果有人可以帮助我,我会很感激。
谢谢。
myalertdialogstyle:
<style name="MyAlertDialogStyle" parent="@android:style/Theme.Dialog">
<!-- Used for the buttons -->
<item name="colorAccent">#FFC107</item>
<!-- Used for the title and text -->
<item name="android:textColorPrimary">#FFFFFF</item>
<!-- Used for the background -->
<item name="android:background">#4CAF50</item>
</style>
utils.class 在其中创建对话框的位置:
public static MaterialDialog createDarkLoadingDialog(Activity activity, int myAlertDialogStyle) {
return new MaterialDialog.Builder(activity)
.title(R.string.loading)
.content(R.string.wait)
.progress(true, 0)
.cancelable(false)
.build();
}
活动我在其中显示对话框:
public class ConversationDetailActivity extends BaseActivity implements LoaderManager.LoaderCallbacks<BaseResponse> {
MaterialDialog pd;
..
pd = Utils.createDarkLoadingDialog(this, R.style.MyAlertDialogStyle);
pd.show();
..
}
对于任何遇到相同问题的人,我都通过使用ContextWrapper解决了它。
public static MaterialDialog createDarkLoadingDialog(Activity activity) {
ContextThemeWrapper ctw = new ContextThemeWrapper(activity, R.style.MyAlertDialogStyle);
return new MaterialDialog.Builder(ctw)
.title(R.string.loading)
.content(R.string.wait)
.progress(true, 0)
.cancelable(false)
.build();
}
然后只需致电/显示您的活动中的对话框:
pd = Utils.createDarkLoadingDialog(this);
pd.show();