android - RecyclerView根据Position设置Item的子视图是否显示?
怪我咯
怪我咯 2017-04-17 17:35:20
0
3
755

我在Adapter里面判断Position然后设置控件是否显示会显示错乱,请问有什么办法可以根据Position来设置控件是否显示。比如:我想在头和尾都显示一张图片,其他则不显示。

怪我咯
怪我咯

走同样的路,发现不同的人生

membalas semua(3)
PHPzhong

XXX.setVisibility(position == XXX ? View.VISIBLE : View.GONE);
要带else的执行,不然会错乱,因为ListView和RecyclerView 都有复用机制,就是你用过的item 滑出屏幕一定距离后会被复用来显示新的数据,如果有某项不重新设置数据,会导致item 的数据是上一次的数据,造成数据错乱。就是你设置了隐藏,就要设置显示

伊谢尔伦

没大看懂你的问题。。。
我觉得你可以重写getItemViewType()方法和getItemCount()方法,在onBindViewHolder中控制。当position是0和最后时显示图片,其他情况显示正确内容
这需要写两个viewHolder,一个是正常的展示数据的,另一个里面只有一个ImageView

PHPzhong

需要先在OnCreatViewHolder时候设置viewType 并加载布局
然后再根据position判断type 设置 数据加载 和 展示。

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan