Я пытаюсь изменить значение по умолчанию TextColor
в Xamarin.Forms ListView на Andoid.Изменение по умолчанию TextColor в Xamarin.Forms Listview на Android
элемент управления ListView довольно прост:
List<string> cities = new List<string> { "Berlin", "Bonn", "Braunschweig", "Bremen" };
ListView listView = new ListView();
listView.ItemsSource = cities;
Content = listView;
На устройстве он выглядит следующим образом:
Что wnat иметь, является то, что TextColor
будет черным. Насколько я понимаю, Xamarin Forms CustomRenderer будет создан для каждого элемента Android.Resource.Layout.SimpleListItem1
.
SimpleListItem1 использует следующую textAppearance:
android:textAppearance="?android:attr/textAppearanceListItemSmall"
textAppearanceListItemSmall
использует атрибут textAppearanceMedium
для визуализации, как вы можете видеть here.
Так я добавил цвета и темы для ресы:
<?xml version="1.0" encoding="UTF-8" ?>
<resources>
<color name="Black">#000000</color>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<style name="MyTheme" parent="android:Theme.Holo.Light">
<item name="android:textAppearanceMedium">@style/MyDefaultTextAppearanceM</item>
</style>
<style name="MyDefaultTextAppearanceM" parent="@android:style/TextAppearance.Medium">
<item name="android:textColor">@color/Black</item>
</style>
</resources>
Я также добавил тему к атрибуту для моей деятельности (Theme = "@style/MyTheme
) Тема в основном работает. С <item name="android:colorActivatedHighlight">@color/Blue4</item>
Я могу изменить HighlightColor.
Итак, как я могу получить цвет текста в черном ListView? Что я делаю неправильно?
Вы также должны добавить template.SetBinding; (TextCell.TextProperty "") то он работает. – Chris