gpt4 book ai didi

c# - 如何使用 Xamarin.Forms.iOS 更改呈现器 View 中的 UIPickerView 文本颜色?

转载 作者:太空宇宙 更新时间:2023-11-03 14:44:05 25 4
gpt4 key购买 nike

我在 ios 渲染器文件中使用了 UIPickerView。我试图更改 View 的文本和背景颜色。使用 SetValueForKeyPath 覆盖方法更改文本颜色。虽然选择器最初加载到 View 中的文本颜色没有改变,但当我更改选定的索引时它会改变(初始加载问题)。

protected override void OnElementChanged(ElementChangedEventArgs<CustomGrid> e)
{
if (e.NewElement != null)
{
var nativeView = new UIPickerView();
nativeView.Model = new PickerSource();
nativeView.BackgroundColor = UIColor.Yellow;
nativeView.SetValueForKeyPath(UIColor.Red, (NSString)"textColor");
CGRect cGRect = new CGRect(0, 0, 100, 100);
SetNativeControl(nativeView);
}

base.OnElementChanged(e);
}

最佳答案

我建议不要使用 PickerRenderer 来更改文本颜色,因为 Xamarin.Forms.Platform.iOS.PickerRenderer 非常复杂;它实际上是一个 UIToolbarUIBarButtonItem 和一个 UITextField 组合成一个 UIPickerView

The code for Xamarin.Forms.Platform.iOS.PickerRenderer is open-source如果您想了解 Xamarin.Forms 团队如何在 iOS 上初始化 Picker

Xamarin.Forms.Picker

在 Xamarin.Forms 中设置 TextColor 更容易:

var picker = new Xamarin.Forms.Picker
{
TextColor = Color.Red
};

关于c# - 如何使用 Xamarin.Forms.iOS 更改呈现器 View 中的 UIPickerView 文本颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55298079/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com