警告CS0618:' PickerRenderer.PickerRenderer()'已经过时了:'这个 构造函数从版本2.5开始已过时。请用 改为PickerRenderer(上下文)。
此警告不仅在选择器渲染器中,所有渲染器(Entry,DatePicker,StackLayout Renderer)都显示此警告。我的Picker自定义渲染器就是这样,
public class BorderlessPickerRenderer : PickerRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<Picker> e)
{
base.OnElementChanged(e);
var picker = e.NewElement;
if (Control != null)
{
Control.Background = null;
Control.SetTextSize(Android.Util.ComplexUnitType.Pt, 8);
Control.SetTextColor(Android.Graphics.Color.ParseColor("#141414"));
}
}
}
答案 0 :(得分:3)
.ctor
(2.5+)基于Android的渲染器有一个新的Xamarin.Forms
,它接受基于Android的上下文。旧的无参数构造函数已被标记为已过时,以支持本机嵌入。
将此添加到渲染器:
public BorderlessPickerRenderer(Context context) : base(context)
{
}
答案 1 :(得分:1)
根据2.5.0 release notes,您应该在下一步添加构造函数:
public BorderlessPickerRenderer(Context context) : base(context) {}
此外,关于此主题的官方Xamarin论坛还有dedicated thread。