我在MVVMCross
项目中使用UserDialogs库。以下代码已经过测试并且工作正常,我能够看到正在加载对话框。我有这个问题,我怎么能改变循环加载进度的颜色才能与我的主题相匹配?
private async Testing ()
{
using (Mvx.Resolve<IUserDialogs>().Loading("Loading..."))
{
await PutTaskDelay();
}
}
async Task PutTaskDelay()
{
await Task.Delay(2000);
}
答案 0 :(得分:1)
在您的原生代码(iOS / Android)中,您必须
MyProgressDialog
表单ProgressDialog
(请参阅https://github.com/aritchie/userdialogs/blob/master/src/Acr.UserDialogs.iOS/ProgressDialog.cs)Refresh
方法并根据需要自定义创建的对话框MyUserDialogs
UserDialogsImpl
CreateDialogInstance
并将其返回new MyProgressDialog()
而不是new ProgressDialog()
MyUserDialogs
(IUserDialogs
)Mvx.Register...
答案 1 :(得分:1)
您可以使用styles.xml提供AppCompat对话框主题:
<style name="Base.Theme.App" parent="Theme.AppCompat.DayNight.NoActionBar">
...
<item name="dialogTheme">@style/Base.Theme.Dialog.App</item>
<item name="alertDialogTheme">@style/Base.Theme.AlertDialog.App</item>
</style>
<style name="Base.Theme.Dialog.App" parent="Theme.AppCompat.DayNight.Dialog">
<item name="colorAccent">@color/accent</item>
</style>
<style name="Base.Theme.AlertDialog.App" parent="Theme.AppCompat.DayNight.Dialog.Alert">
<item name="colorAccent">@color/accent</item>
</style>
这将更改ACR.UserDialogs库中进度小部件的颜色,以及负/正/中性操作按钮。请在此处查看更多信息:How to Use and Style the new AlertDialog from appCompat 22.1 and above