我想以此作为序言,我研究过的大多数线程都展示了如何更改选择器元素本身的背景颜色,而不是 GUI。
白色的 Android GUI 确实令人不快,与我的应用程序的其余部分不匹配,我想更改标题和背景颜色。我该如何实现这一目标?另外,如果可能的话,如何更改该元素的尺寸?
我尝试创建 CustomPickerRenderer 并更改背景颜色,但这会在单击之前更改元素的背景。这不是我想要达到的目标。
您可能已经注意到,选取器控件上没有任何属性允许您更改打开选取器时显示的弹出窗口的外观。
就编写自己的具有“PopupBackgroundColor”属性的自定义选取器控件而言,此路线可能不会很有成效,也不会创建大量额外的工作来使您的应用程序具有一致的外观。
在 Android 上,Xamarin 使用 Android 的
AlertDialog
。不幸的是,没有办法通过此类或 AlertDialob.Builder
自定义背景。然而,在 Android 上,可以使用主题为整个应用程序自定义 AlertDialog 的外观。这可能是 Android 中的首选方法,因为它将使所有选择器对话框保持一致。请注意,这也会更改应用程序中其他弹出窗口的外观。这可能更像是一个功能而不是一个错误。
在 iOS 上,Xamarin 也使用 UIAlertController
,并且无法在弹出窗口上设置背景颜色。我对 iOS 上的主题不太熟悉,但似乎只有两个选项:浅色(白色背景)或深色(黑色背景)主题。因此,请查看本机平台主题设置,看看它是否与您设置应用程序外观的方式一致。如果您想同时处理浅色和深色主题,请查看
ApplicationThemeBinging 标记扩展来处理浅色和深色主题。