У меня есть линейный макет в виде круга, и я хотел изменить его цвет с помощью преобразователя значений.
ниже как выглядит мой линейный макет
<LinearLayout
android:orientation="vertical"
android:id="@+id/linearLayoutDaysLeft"
android:background="@drawable/RedBackground"
local:MvxBind="BackgroundColor DateColor(EndDate)"/>
обратите внимание, я установил фон как @ drawable / RedBackground
ниже как выглядит мой файл @ drawable / RedBackground.xml
<?xml version="1.0" encoding="utf-8" ?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<corners android:radius="10dip"/>
<solid android:color="#D00E0D"/>
</shape>
Ниже мой код DateColorValueConverter
protected override Cirrious.CrossCore.UI.MvxColor Convert(object value, object parameter, System.Globalization.CultureInfo culture)
{
var date = (DateTime)value;
int dayLeft;
TimeSpan difference = date - DateTime.Today;
dayLeft = (int)Math.Ceiling(difference.TotalDays);
if (dayLeft < 0)
return (new Cirrious.CrossCore.UI.MvxColor(208, 14, 13, 150));
if (dayLeft >= 0 && dayLeft <= 1)
return (new Cirrious.CrossCore.UI.MvxColor(255, 210, 0, 150));
if (dayLeft > 1)
return (new Cirrious.CrossCore.UI.MvxColor(93, 210, 85, 150));
return (new Cirrious.CrossCore.UI.MvxColor(93, 210, 85, 150));
}
Обратите внимание, что мой DateColor работает так, как требуется, но когда он возвращает цвет, он удаляет форму cicular
Пожалуйста помогите
Спасибо
Аман