Android RecyclerView 实现position列表倒序排列(汇总)

简介: 转载请标明出处: http://blog.csdn.net/djy1992/article/details/76201794 本文出自:【奥特曼超人的博客】刚刚群里有人在问Position倒序的问题,刚好有点时间在这里总结下分享给大家。

转载请标明出处:
http://blog.csdn.net/djy1992/article/details/76201794
本文出自:【奥特曼超人的博客】

刚刚群里有人在问Position倒序的问题,刚好有点时间在这里总结下分享给大家。

不懂的可以点击加入 安卓移动技术精英群安卓移动技术精英



第一种: 常见的有Collections

Collections.sort(list);  
System.out.println("list-》 默认排序后的状态");  
SortList.output(list);  



第二种: 在设置数据源的时候:

// 设置倒序
        Collections.reverse(bean);
        myViewHolder.tv.setText(bean.get(position));



第三种: 自定义Comparator比较对象,在setAdapter之前调用,Beans需要implements Comparator :

// 自定义比较器:假设是按书的价格排序  
    static class PriceComparator implements Comparator {  
        public int compare(Object object1, Object object2) {// 实现接口中的方法  
            Book p1 = (Book) object1; // 强制转换  
            Book p2 = (Book) object2;  
            return new Double(p1.price).compareTo(new Double(p2.price));  
        }  
    }  
//调用
Collections.sort(list, new PriceComparator()); // 根据价格排序  
//示例:单独比较
    Comparator<Beans> itemComparator = new Comparator<Beans>() {  
        public int compare(Beans info1, Beans info2){  
            return info1.getAges().compareTo(info2.getAges());  
        }  
    };  
    Collections.sort(mProfileList, itemComparator);  



第四种: RecyclerView的布局是有LayoutManager控制的,而LinearLayoutManager就支持了倒序的功能,所以我们可以直接用:

setStackFromEnd(true);
setReverseLayout(true);
//示例:setAdapter之前使用
LinearLayoutManager layout = new LinearLayoutManager(this);
layout.setStackFromEnd(true);//列表再底部开始展示,反转后由上面开始展示
layout.setReverseLayout(true);//列表翻转
rView.setLayoutManager(layout);



第五种: 和listview一样,size和position是相应的,只要用size来反转数据即可,或者重写adapter的getItem方法,改为get(size-1-position)。



第六种: list增加数据源(这种不太推荐)

//顾名思义,添加到头部数据
list.addFirst(item)

|| 版权声明:本文为博主杜锦阳原创文章,转载请注明出处。

相关文章
|
2月前
|
存储 数据库 Android开发
安卓Jetpack Compose+Kotlin,支持从本地添加音频文件到播放列表,支持删除,使用ExoPlayer播放音乐
为了在UI界面添加用于添加和删除本地音乐文件的按钮,以及相关的播放功能,你需要实现以下几个步骤: 1. **集成用户选择本地音乐**:允许用户从设备中选择音乐文件。 2. **创建UI按钮**:在界面中创建添加和删除按钮。 3. **数据库功能**:使用Room数据库来存储音频文件信息。 4. **更新ViewModel**:处理添加、删除和播放音频文件的逻辑。 5. **UI实现**:在UI层支持添加、删除音乐以及播放功能。
133 1
|
2月前
|
API Android开发 开发者
`RecyclerView`是Android API 21引入的UI组件,用于替代ListView和GridView
【6月更文挑战第26天】`RecyclerView`是Android API 21引入的UI组件,用于替代ListView和GridView。它提供高效的数据视图复用,优化的布局管理,支持多种布局(如线性、网格),并解耦数据、适配器和视图。RecyclerView的灵活性、性能(如局部刷新和动画支持)和扩展性使其成为现代Android开发的首选,特别是在处理大规模数据集时。
36 2
|
2月前
|
Android开发 Kotlin
Android面试题 之 Kotlin DataBinding 图片加载和绑定RecyclerView
本文介绍了如何在Android中使用DataBinding和BindingAdapter。示例展示了如何创建`MyBindingAdapter`,包含一个`setImage`方法来设置ImageView的图片。布局文件使用`&lt;data&gt;`标签定义变量,并通过`app:image`调用BindingAdapter。在Activity中设置变量值传递给Adapter处理。此外,还展示了如何在RecyclerView的Adapter中使用DataBinding,如`MyAdapter`,在子布局`item.xml`中绑定User对象到视图。关注公众号AntDream阅读更多内容。
39 1
|
2月前
|
存储 API Android开发
29. 【Android教程】折叠列表 ExpandableListView
29. 【Android教程】折叠列表 ExpandableListView
30 2
|
2月前
|
前端开发 API Android开发
25. 【Android教程】列表控件 ListView
25. 【Android教程】列表控件 ListView
57 2
|
2月前
|
安全 Java API
Android获取Wi-Fi网络列表
【6月更文挑战第21天】
|
2月前
|
XML Java Android开发
Android RecyclerView用代码动态设置item的selector
Android RecyclerView用代码动态设置item的selector
27 0
|
2月前
|
XML Android开发 UED
|
3月前
|
Android开发
Android获取蓝牙设备列表的方法
Android获取蓝牙设备列表的方法
230 5
|
3月前
|
Android开发
Android 获取 USB设备列表
Android 获取 USB设备列表 【5月更文挑战第6天】
109 4