@Scripis

Почему при рендеринге другой вид у Picker в xamarin forms?

Доброго дня).
Я применяю пользовательский рендеринг Picker, чтобы изменить цвет линии, но при этом меняется также и вид окна.
Скажите, как сохранить оригинальный вид у андроид при рендеринге?

Picker оригинал 5e661288affb7688165418.png
PickerRenderer 5e6612b87efe6303182619.png

<local:PickerCus
x:Name="hous"
Grid.Column="1" Grid.Row="2"
Style="{StaticResource Picker}">
<Picker.Items>
<x:String>Свой дом</x:String>
<x:String>Снимает</x:String>
<x:String>Общежитие</x:String>
<x:String>Временно живет у друзей</x:String>
<x:String>Временно живет у родственников</x:String>
</Picker.Items>
</local:PickerCus>


[assembly: ExportRenderer(typeof(PickerCus), typeof(CustomPickerRenderer))]
namespace PsihoProfile.Droid
{
    class CustomPickerRenderer: PickerRenderer
    {
        private Context context;
        public CustomPickerRenderer(Context context) : base(context)
        {
            this.context = context;
        }

        protected override void OnElementChanged(ElementChangedEventArgs<Picker> e)
        {
            base.OnElementChanged(e);
            if (Control == null || e.NewElement == null) return;
            //for example ,change the line to red:
            if (Build.VERSION.SdkInt >= BuildVersionCodes.Lollipop)
                Control.BackgroundTintList = ColorStateList.ValueOf(Color.White);
            else
                Control.Background.SetColorFilter(Color.White, PorterDuff.Mode.SrcAtop);
        }
    }
}
  • Вопрос задан
  • 80 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы