Java 回收适配器定位问题

Java 回收适配器定位问题,java,android,android-recyclerview,Java,Android,Android Recyclerview,我正在使用回收适配器来传输我的数据。问题是当我向下滚动时,正在填充相同的数据,例如: 05-28 20:52:09.626添加键:设置支架-位置:0 05-28 20:52:10.533添加键:设置支架-位置:1 05-28 20:52:10.569添加键:设置支架-位置:2 05-28 20:52:10.916添加键:设置支架-位置:3 05-28 20:52:11.214添加键:设置支架-位置:4 05-28 20:52:11.494添加键:设置支架-位置:5 05-28 20:52:11.

我正在使用回收适配器来传输我的数据。问题是当我向下滚动时,正在填充相同的数据,例如:

05-28 20:52:09.626添加键:设置支架-位置:0
05-28 20:52:10.533添加键:设置支架-位置:1
05-28 20:52:10.569添加键:设置支架-位置:2
05-28 20:52:10.916添加键:设置支架-位置:3
05-28 20:52:11.214添加键:设置支架-位置:4
05-28 20:52:11.494添加键:设置支架-位置:5
05-28 20:52:11.789添加键:设置支架-位置:6
05-28 20:52:12.033添加键:设置支架-位置:4
05-28 20:52:12.037添加键:设置支架-位置:5
05-28 20:52:12.041添加键:设置支架-位置:6
05-28 20:52:12.099添加键:设置支架-位置:7
05-28 20:52:12.212添加键:设置支架-位置:8
05-28 20:52:13.052添加键:设置支架-位置:9
05-28 20:52:13.340添加键:设置支架-位置:10
05-28 20:52:13.739添加键:设置支架-位置:11
05-28 20:52:14.185添加键:设置支架-位置:12
05-28 20:52:14.227添加键:设置支架-位置:13
05-28 20:52:14.481添加键:设置支架-位置:14
05-28 20:52:14.851添加键:设置支架-位置:15
05-28 20:52:15.032添加键:设置支架-位置:12
05-28 20:52:15.041添加键:设置支架-位置:13
05-28 20:52:15.044添加键:设置支架-位置:14
05-28 20:52:15.069添加键:设置支架-位置:15
05-28 20:52:15.174添加键:设置支架-位置:16
05-28 20:52:15.843添加键:设置支架-位置:17
05-28 20:52:16.181添加键:设置支架-位置:18
05-28 20:52:16.599添加键:设置支架-位置:19
05-28 20:52:16.631添加键:设置支架-位置:20
05-28 20:52:16.913添加键:设置支架-位置:21
05-28 20:52:17.378添加键:设置支架-位置:22
05-28 20:52:17.693添加键:设置支架-位置:23
05-28 20:52:18.082添加键:设置支架-位置:24
05-28 20:52:18.498添加键:设置支架-位置:25
05-28 20:52:18.844添加键:设置支架-位置:26
05-28 20:52:19.236添加键:设置支架-位置:27
05-28 20:52:19.713添加键:设置支架-位置:28
05-28 20:52:19.926添加键:设置支架-位置:25
05-28 20:52:19.928添加键:设置支架-位置:26
05-28 20:52:19.948添加键:设置支架-位置:27
05-28 20:52:19.972添加键:设置支架-位置:28
05-28 20:52:20.010添加键:设置支架-位置:29
05-28 20:52:20.783添加键:设置支架-位置:30
05-28 20:52:20.995添加键:设置支架-位置:31
05-28 20:52:21.178添加键:设置支架-位置:32
05-28 20:52:21.537添加键:设置支架-位置:33
05-28 20:52:21.908添加键:设置支架-位置:34
05-28 20:52:22.335添加键:设置支架-位置:35
05-28 20:52:22.607添加键:设置支架-位置:33
05-28 20:52:22.609添加键:设置支架-位置:34
05-28 20:52:22.611添加键:设置支架-位置:35
05-28 20:52:22.657添加键:设置支架-位置:36
05-28 20:52:22.891添加键:设置支架-位置:37
05-28 20:52:23.757添加键:设置支架-位置:38
05-28 20:52:23.968添加键:设置支架-位置:39
05-28 20:52:23.996添加键:设置支架-位置:40
05-28 20:52:24.285添加键:设置支架-位置:41
05-28 20:52:24.643添加键:设置支架-位置:42
05-28 20:52:25.134添加键:设置支架-位置:43
05-28 20:52:25.388添加键:设置支架-位置:44
05-28 20:52:25.680添加键:设置支架-位置:45
05-28 20:52:26.050添加键:设置支架-位置:46
05-28 20:52:26.345添加键:设置支架-位置:47
05-28 20:52:26.759添加键:设置支架-位置:48
05-28 20:52:27.060添加键:设置支架-位置:49
05-28 20:52:27.112添加键:设置支架-位置:46
05-28 20:52:27.114添加键:设置支架-位置:47
05-28 20:52:27.116添加键:设置支架-位置:48
05-28 20:52:27.134添加键:设置支架-位置:49
05-28 20:52:27.311添加键:设置支架-位置:50

正如你所看到的,虽然我正在向下滚动位置4,12,但有时该位置仍在重复

我不能粘贴源代码,因为它是保密的

提前谢谢

编辑:


覆盖recyclerview适配器中的getItemViewType和return位置,一切都会很好

@Override
public int getItemViewType(int position) {
    return position;
}

我猜,假设您有一个textview来填充recyclerview方法中的名称列表,在bindViewHolder()函数中,您需要每次更新textview


假设您具有更新数据的if()条件,然后应该有else条件让备用值更新textview,否则它只显示以前的数据。

将代码张贴在您第一次设置适配器的位置,当您以后更新适配器时,没有代码是无法帮助的。将代码添加到主要问题中如果工作不正常,您必须粘贴那么适配器代码..对不起,先生不能这样做。但是谢谢你的帮助但是我怎么才能避免呢。因为我必须检查它是否为空,否则我会简单地更新它,然后从列表中删除空值,没有其他方法可以尝试
@Override
public int getItemViewType(int position) {
    return position;
}