viewpager重复setadapter 会自动清除前面的数据吗

viewpager重复setadapter 会自动清除前面的数据吗,第1张

使用ViewPager的setCurrentItem (int item) 方法设置其初始显示的页面,

是在数据适配器中,而是在完成数据适配后设置。

如viewPager.setAdapter(adapter)

viewPager.setCurrentItem(3)

我们使用RecyclerView时候,一般是setAdapter一次,之后通过调用adapter.notify()来更新数据和UI(不讨论差量更新)。

最近由于业务需求,出现一个界面中由一个RecyclerView承载所有内容,但是可以通过界面内tab_button来切换内容类别的情况,用于内容数据量较大,希望来回切换能流畅迅速。因此这里我采用了多个adapter来记录不同的类别数据,来回切换只要调用setAdapter(Adapter adapter)即可,实际也如愿完成了功能。

偶然看recyclerView源码中,有这样一个函数:

看注释基本就能够明白,这是一个和setAdapter类似的方法,不过,针对于界面view结构类似或者相同,需要频繁设置adapter的时候,做了优化,能够再切换的时候复用相同的viewHolder,减少一定的开销。

listview重用机制,可以在adapter中的什么方法进行列表项的重复使用

所以MFC相对于WIN API开发更具备效率优势,但为了对WINDOWS开发有一个较为全面细致的认识,笔者在这里还是以讲解WIN API的相关内容为主线。

话说到这里可能更多人关心的是学习VC++需要具备什么条件,为什么对于这扇门屡攻不破呢?

要想学习好VC必须具备良好的C/C++的基础,必要的英语阅读能力也是必不可少的,因为大量的技术文档多以英文形式发布。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/7894729.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-11
下一篇2023-04-11

发表评论

登录后才能评论

评论列表(0条)

    保存