Android:如何匹配滚动范围的列表在一个活动,那一个属于另一个活动



我有两个活动,在每个活动中,我都有一个使用适配器的列表。

我想把这个作为一项技能:

匹配两个列表的滚动状态(ListView(s))。

假设在活动1中,我有50只动物的列表,在活动2中,我有50种活动中每种动物喜欢吃的食物的列表(一对一)。

现在,当我在第一个活动中选择第30个动物时,第二个活动打开时,不仅选择了第30个项目(Selector),而且滚动状态也相同。然后在第二个活动中,我选择了第二个食物项目,当返回到第一个活动时,不仅第二个动物被选中并突出显示,它也被滚动到该项目。

有两个方法与列表的焦点管理相关联。您必须确保列表中也没有onSelectedListener,这样就不会有任何活动的不必要触发器。

  1. list.setSelection(指数);//直接移动到索引
  2. list.smoothScrollToPosition(指数);//滚动到索引

在saveInstanceState上的包中记录一个活动的索引,并在导航的两个方向上将其传递到目标活动。

最新更新