我正在使用此代码在网络错误上显示AlertDialog:
var builder = new AlertDialog.Builder(this);
builder.SetMessage(error);
builder.SetCancelable(false);
builder.SetPositiveButton("OK", delegate { });
builder.Show();
然而,它看起来像这样:
问题:
我使用Theme.DeviceDefault.Light作为活动的主题:
[Activity (Label = "xxx", Theme = "@style/MyAppTheme", MainLauncher = true)]
...
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="MyAppTheme" parent="@android:style/Theme.DeviceDefault.Light">
</style>
</resources>
如何解决这个问题?尝试将MyAppTheme作为第二个参数插入AlertDialog.Builder(this, Resource.Style.MyAppTheme)
,但UI中没有任何变化。
答案 0 :(得分:0)
解决了它。使用
var builder = new AlertDialog.Builder(this, Android.App.AlertDialog.ThemeHoloLight);
它看起来更好。我还使用了Activity.ShowDialog()并将我的AlertDialog代码放在
中protected override Dialog OnCreateDialog(int id, Bundle args)
不确定它是否有任何区别。
好的博文:http://blog.ostebaronen.dk/2013/02/using-dialogs-in-mono-for-android.html