ListView关注列表中的最后一项? - Xamarin形式
有人能告诉我如何保持ListView
总是在最后的列表项?以WhatsApp中的对话为例,当我们发送消息时,刚刚到达的消息总是聚焦......或者任何类似的解决方案?ListView关注列表中的最后一项? - Xamarin形式
我所寻找的是什么时候在ListView
中插入某些东西,而不是提供选项以查看下面的项目,我希望它是相反的方式。始终在屏幕上显示最后一个项目。
回答:
我创建了一个例子,你有两个元素,一个列表视图和一个添加新元素的按钮。
这是我的XAML:
<Grid> <Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="4*" />
</Grid.RowDefinitions>
<ListView x:Name="ListView" />
<Button
Grid.Row="1"
Clicked="Button_OnClicked"
Text="Add animal" />
</Grid>
正如你可以看到按钮是为了显示出更好的滚动非常巨大。
在我的代码隐藏,我用ListView.ScrollTo
方法滚动到最后添加的元素,动画:
public partial class MainPage : ContentPage {
private ObservableCollection<String> animals;
private int _counter = 0;
public MainPage()
{
InitializeComponent();
animals = new ObservableCollection<string>(new List<string>{"dog","cat","fish","elephant","monkey"});
ListView.ItemsSource = animals;
}
private void Button_OnClicked(object sender, EventArgs e)
{
var newElement = "new animal"+_counter;
_counter++;
animals.Add(newElement);
ListView.ScrollTo(newElement, ScrollToPosition.End, true);
}
}
我希望这可以帮助你。
以上是 ListView关注列表中的最后一项? - Xamarin形式 的全部内容, 来源链接: utcz.com/qa/258668.html