Xamarin.forms 自定义xamarin表单ios中的选择器背景色和标题颜色

Xamarin.forms 自定义xamarin表单ios中的选择器背景色和标题颜色,xamarin.forms,uipickerview,background-color,picker,custom-renderer,Xamarin.forms,Uipickerview,Background Color,Picker,Custom Renderer,我正在寻找“每当点击时用背景色突出显示选择器”以及“标题色” 当我单击其他选择器时,前一个选择器必须更改为默认颜色,当前单击的选择器必须更改为颜色 我试过在代码隐藏中使用PickerName.BackgroundColor属性,但它不能正常工作,有时也不能更改。是否有其他方法或如何使用自定义渲染器或其他方法实现此目的?。提前感谢。我们可以在PCL中的SelectedIndexChanged事件中更改背景颜色 picker.SelectedIndexChanged += (sender, args

我正在寻找“每当点击时用背景色突出显示选择器”以及“标题色”

当我单击其他选择器时,前一个选择器必须更改为默认颜色,当前单击的选择器必须更改为颜色


我试过在代码隐藏中使用PickerName.BackgroundColor属性,但它不能正常工作,有时也不能更改。是否有其他方法或如何使用自定义渲染器或其他方法实现此目的?。提前感谢。

我们可以在PCL中的SelectedIndexChanged事件中更改背景颜色

picker.SelectedIndexChanged += (sender, args) =>
 {
     picker.BackgroundColor=Color.Red;
 };
(或)

我们可以通过以下方式实现这一目标

示例:

Xamarin.iOS

在Xamarin.iOS中找到选择器选择的覆盖方法,并将该覆盖方法放入CustomRenderer中,然后在其中更改背景颜色

尝试下面的代码

Device.BeginInvokeOnMainThread(() =>
{
  picker.BackgroundColor = Color.Red;
  picker.TextColor=Color.Pink;
});

你试过在主线程上改变背景颜色吗?是的,它可以改变主线程的背景颜色,也可以改变焦点,但是这是正确的方法吗?而且标题文本颜色根本没有改变。UI总是在主线程上更新,所以这是更新背景颜色的正确方法。有什么可以改变它的标题颜色吗?没有,我要求的是标题颜色而不是文本颜色。@Riyas可以告诉我当picker打开时,它显示在哪个标题颜色中吗?还是别的什么?我用下面的代码临时更改标题颜色,<代码>控件。AdvestPosidReals=新的基础。NSAttributedString(Copy.AdvestPosialHooDel.Valk,FoeLooToCurr:Hual.FromRgb(0,0,0).TouiCoLoor());代码>但我需要动态更改颜色,是否有任何覆盖方法用于选取器点击或聚焦时,我们可以按照我所给的再次更改标题颜色。Picker不包含占位符颜色的属性,并且Picker的标题在本机控件中显示为占位符,因此您所做的更改占位符颜色@riyas是正确的,我需要它在我点击Picker时再次更改标题颜色,因为我需要重写方法,自定义渲染器中是否有可用的?