我有一个包含150多个项目的列表视图,我需要从代码中看到一个。我目前使用的是smoothscrolltoposition,但是当所需的项目远离当前的可见项目时,它需要几秒钟才能到达。
无论如何只是简单地摆脱平滑滚动并直接使项目可见?
谢谢, 伊格纳西奥
答案 0 :(得分:0)
您可以使用postdelayed进行平滑滚动
listview.postDelayed(new Runnable() {
@Override
public void run() {
// smoothscrolltoposition
}
}, 100);
答案 1 :(得分:0)
经过多次测试并阅读奥迪建议的帖子后,我得到了这个解决方案:
奇怪的是,诀窍在于将适配器重新分配给列表视图,甚至不需要重新创建它,只需重新分配。
listView.Adapter = adapter;
listView.FastScrollEnabled = true;
listView.SetSelection(index);
adapter.NotifyDataSetChanged();