gpt4 book ai didi

Android ListView 显示/初始化事件

转载 作者:行者123 更新时间:2023-11-29 18:17:21 29 4
gpt4 key购买 nike

当我的 ListView 完成显示项目时,我需要做一些事情。现在,我调用 NotifyDataSetChanged,然后使用 list.FirstVisiblePosition,但问题是在调用时没有任何项目可见。

那么当项目在屏幕上可见时如何触发我的代码?

这样做的原因是我只需要为可见项做一些工作。

谢谢,尼克拉斯

最佳答案

您在 ListView 中使用什么集合类型?如果您使用的是“普通”集合类型(例如 System.Collections.Generic.List<T> ),则 ListView 将看不到您在构造 ListView 后添加到集合中的任何项目。您需要使用 JavaList<T>相反。

请参阅 Collections binding overview 末尾的示例:

// This fails:
var badSource = new List<int> { 1, 2, 3 };
var badAdapter = new ArrayAdapter<int>(context, textViewResourceId, badSource);
badAdapter.Add (4);
if (badSource.Count != 4) // true
throw new InvalidOperationException ("this is thrown");

// this works:
var goodSource = new JavaList<int> { 1, 2, 3 };
var goodAdapter = new ArrayAdapter<int> (context, textViewResourceId, goodSource);
goodAdapter.Add (4);
if (goodSource.Count != 4) // false
throw new InvalidOperaitonException ("should not be reached.");

关于Android ListView 显示/初始化事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7399205/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com