gpt4 book ai didi

java - 前进 ListView 下一项/setSelectionFromTop 不起作用/禁止用户滚动 ListView

转载 作者:行者123 更新时间:2023-12-01 05:19:10 27 4
gpt4 key购买 nike

我有一个 ListView ,显示项目列表...不是全部,但它们都在那里。要求不是让用户向上/向下滚动,而是需要向上/向下按钮。除了如何推进 ListView 之外,我把所有事情都处理得很好。假设我正在查看列表中的第 3 项。用户点击下一个...我想要 ListView 前进到第 4 项。我在内部跟踪它们所在的页面以进行递增/递减。我本来希望找到这样的东西,但没有运气。

ListView.MoveNext();

ListView.Move(int);

根据 Brayden 的建议,我在这里尝试了接受的解决方案:Maintain/Save/Restore scroll position when returning to a ListView并且它似乎没有滚动列表......即它保留在第一个列表项上。我也尝试过 setSelection。

这是我的代码:

public void btn_NextClick(View vw_Current) 
{
//increment page count 1
i_PageTracker ++;

//advance to next record
//int x = lstvw_LiftData.getFirstVisiblePosition();
View v = lstvw_LiftData.getChildAt(0);
int top = (v == null) ? 0 : v.getTop();

lstvw_LiftData.setSelectionFromTop(i_PageTracker, top);
//lstvw_LiftData.setSelection(i_PageTracker);
}

基于弗拉基米尔的成功和我的缺乏,我想提供一些我认为无关紧要的附加信息,但是......

我扩展了 SimpleAedapter 并覆盖了 getView。我还有一个 DataBinder,用于使用数据对象中的某些数据填充 TextView。

有趣的是,当我在加载时在 DataAdapter 的 getView 和绑定(bind)器的 setViewValue 中设置断点时,我们会适本地击中它们。然而,当单击下一个按钮时,我们不会点击它们,如果列表前进到下一个位置,我会期望它们......嗯,我想知道......我有另一个想法......马上回来。

我明白了......但我不知道该怎么办。看看我不知道我在做什么,我开枪自杀了。我只想一次看到列表中的一项,并且不希望用户能够滚动。为了实现这一目标,我所做的就是重写 DataAdapter 中的 getCount 并返回 1。这似乎是答案,因为只有一项显示很酷!但是重写 getCount 也意味着只有一项要显示,所以我们永远不会前进......没有什么可以前进。

所以我想知道的是这个。如何阻止用户滚动并强制他们使用导航按钮。我是否处理滚动事件并返回 null?

最佳答案

我明白了......但我不知道该怎么办。看看我不知道我在做什么,我开枪自杀了。我只想一次看到列表中的一项,并且不希望用户能够滚动。为了实现这一目标,我所做的就是重写 DataAdapter 中的 getCount 并返回 1。这似乎是答案,因为只有一项显示很酷!但是重写 getCount 也意味着只有一项要显示,所以我们永远不会前进......没有什么可以前进。

所以我想知道的是这个。如何阻止用户滚动并强制他们使用导航按钮。我是否处理滚动事件并返回 null?

关于java - 前进 ListView 下一项/setSelectionFromTop 不起作用/禁止用户滚动 ListView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10693112/

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