Я создал ViewCellRenderer, где у меня есть две метки и вертикальный вид, который представляет строку (полная высота, ширина 2dp). Теперь настройка текста прекрасна, но когда я пытаюсь изменить цвет фона в представлении, рендеринг отображает его как прозрачный. Вот мой код:Пользовательский рендерер в Android не позволяет изменять цвет фона в представлении
Android.Views.View colorStripe = v.FindViewById<Android.Views.View>(Resource.Id.llColorStripe);
Android.Graphics.Color stripeColor = new Android.Graphics.Color();
stripeColor = stripeColor.FromHexString(x.StripeColor);
colorStripe.SetBackgroundColor(stripeColor);
x.StripeColor цвет шестнадцатеричный, что я хочу, чтобы применить динамически для каждой ячейки. Я отлаживал его, цвет правильно строился и применялся к представлению, но когда я продолжаю выполнение, в пользовательском интерфейсе нет цветовой полосы. Я отлаживал представление иерархии, и я вижу, что полоса имеет ширину и высоту, но не имеет никакого цвета фона. Но нет никаких проблем для прошивкой:
Каждый знает, как я могу это исправить? Большое спасибо!
Вы пробовали Android.Graphics.Color stripeColor = новый Android.Graphics.Color(); colorStripe.SetBackgroundColor (stripeColor.ToAndroid()); –
Нет такого метода ToAndroid() –
stripeColor - это строка, а не тип цвета. Я получаю шестнадцатеричное значение от сервера в виде строки, а затем вычисляю значения RGB на основе этого шестнадцатеричного кода. –