Я работаю над приложением чата Xamarin.Forms, которое отправляет / получает текст за символом, это означает, что текстовая привязка в строке просмотра списка обновляется каждые 1-2 секунды или полсекунды (в зависимости от скорости набора),В Android элемент списка обновляется плавно, но в iOS он мигает и пульсирует, как стробоскоп с каждым введенным символом.
Редактировать Шаги репликации: привязать ItemSource Listview к ObservableCollection, которая обновляется для каждого элемента. новый персонаж набран в Entry. Используйте DataTemplate с меткой, которая отображает текст, введенный в поле ввода.
В Page.xaml
<ListView HasUnevenRows="True" ItemsSource="{Binding ObservableCollection}">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<ViewCell.View>
<Grid>
<Label Text="{Binding Text}"/>
</Grid>
</ViewCell.View>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
<Entry Text="{Binding UserText}"/>
В PageViewModel.cs
/// <summary>
/// Gets or sets the text entered by the user
/// </summary>
public string UserText
{
get
{
return this.userText;
}
set
{
this.SetProperty(ref this.userText, value);
// Display text by updating listview
Device.BeginInvokeOnMainThread(() =>
{
this.ObservableCollection.Add(userText);
});
}
}