首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    RecycleView从0到0.1 | 技术创作特训营第一期

    一、文章快速总结RecycleView是安卓的列表,可以灵活控制每一项的数据,布局,动画。Adaper是整体适配器,逻辑放在这里。Holder是每一项的内容,把控件初始化放在这里。...二、RecycleView是什么  RecycleView是Android5.0后谷歌推出的一个用于在有限的窗口中展示大量数据集的控件,位于support-v7包中。...三、RecycleView的优点 1、支持局部刷新。 2、可以自定义item增删时的动画。 3、能够实现item拖拽和侧滑删除等功能。...holder.itemView.setOnClickListener(new View.OnClickListener() { @Override public void onClick...当我们定义好接口后,我们在onBindViewHolder()方法中为holder.itemView(itemView是列表中的每一个item项)设置了点击事件监听,然后在onClick()中判断是否有用户传递过

    44411

    Android基于DataBinding封装RecyclerView实现快速列表开发

    比写代码难多了,最后绞尽脑汁的想了一个 ardf,英文 “android rapid development framework” 的缩写,即 “Android 快速开发框架”,很好,已经完成这个框架的 50% 工作了...3.1 扩展属性介绍 ardf通过 DataBinding 的 BindingAdapter 扩展了 RecycleView 一系列属性,用于在 xml 布局中对 RecyclerView 进行快捷配置...,无需编写 java/kotlin 代码即可完成对 RecyclerView 的全部配置,包括列表数据、item 布局、事件等,具体可配置属性如下: 属性名 类型 描述 data List RecycleView...' id 'org.jetbrains.kotlin.android' id 'kotlin-kapt' } ardf 的使用配置就完成了,点击 Sync Now同步 build.gradle..." android:layout_marginEnd="20dp" android:text="删除item" android:onClick

    2.9K30

    Jetpack 系列之Paging3,看这一篇就够了~

    一般我们都是自己封装RecycleView或者使用XRecycleView这种第三方库去做,而Paging 就是Google为我们提供的分页功能的标准库,这样我们就无须自己去基于RecycleView实现分页功能...和UI层都有具体的表现,接下来我们通过一个示例来逐步讲解Paging是如何在项目架构中工作的。...View层数据请求并将结果显示在View上 到这里,基本工作已经差不多了,当然我们说的差不多了只是快能看到成果了,其中需要讲解的地方还有很多,最后一步我们在view中请求数据,并将结果绑定在adapter...除此之外,Paging3中还有一个比较重要的RemoteMediator,用来更好的加载网络数据库和本地数据库,我们后续有机会再为大家单独分享吧~ 2020年11月21日更新 paging3的设计理念是不建议对列表数据直接修改...;而是对数据源进行操作,数据源的变化会自动更新到列表,看到评论区中很多朋友说如何操作item的删除和修改,这里我们使用最简单的方式即可 对单个item的修改 我们都知道RecycleView中是没有直接监听

    2K20

    Jetpack 系列之Paging3,看这一篇就够了~

    一般我们都是自己封装RecycleView或者使用XRecycleView这种第三方库去做,而Paging 就是Google为我们提供的分页功能的标准库,这样我们就无须自己去基于RecycleView实现分页功能...协程 看这一篇就够了 Kotlin Flow 看这一篇 带你入门~ 项目示例 在官方文档中也给出了我们Paging在架构中的使用图 ?...通过上图我们也可以清晰的看出来,Paging在仓库层、ViewModel和UI层都有具体的表现,接下来我们通过一个示例来逐步讲解Paging是如何在项目架构中工作的。...View层数据请求并将结果显示在View上 到这里,基本工作已经差不多了,当然我们说的差不多了只是快能看到成果了,其中需要讲解的地方还有很多,最后一步我们在view中请求数据,并将结果绑定在adapter...除此之外,Paging3中还有一个比较重要的RemoteMediator,用来更好的加载网络数据库和本地数据库,我们后续有机会再为大家单独分享吧~ 2020年11月21日更新 paging3的设计理念是不建议对列表数据直接修改

    3.5K10

    RecycleView三问—腾讯真题

    和listview区别 Recycleview布局效果更多,增加了纵向,表格,瀑布流等效果 Recycleview去掉了一些api,比如setEmptyview,onItemClickListener等等...,给到用户更多的自定义可能 Recycleview去掉了设置头部底部item的功能,专向通过viewholder的不同type实现 Recycleview实现了一些局部刷新,比如notifyitemchanged...Recycleview自带了一些布局变化的动画效果,也可以通过自定义ItemAnimator类实现自定义动画效果 Recycleview缓存机制更全面,增加两级缓存,还支持自定义缓存逻辑 Recycleview...,包含数据和position信息,复用时必须是相同位置的ViewHolder才能复用,应用场景在那些需要来回滑动的列表中,当往回滑动时,能直接复用ViewHolder数据,不需要重新bindView。...mViewCacheExtension(自定义缓存),不直接使用,需要用户自定义实现,默认不实现。

    1.2K40

    Android Jetpack系列 之分页库Paging3(一)

    一般我们都是自己封装RecycleView或者使用XRecycleView这种第三方库去做,而Paging 就是Google为我们提供的分页功能的标准库,这样我们就无须自己去基于RecycleView实现分页功能...协程 看这一篇就够了 Kotlin Flow 看这一篇 带你入门~ 项目示例 在官方文档中也给出了我们Paging在架构中的使用图 ?...通过上图我们也可以清晰的看出来,Paging在仓库层、ViewModel和UI层都有具体的表现,接下来我们通过一个示例来逐步讲解Paging是如何在项目架构中工作的。...: class DataRecycleViewAdapter : PagingDataAdapterViewHolder...View层数据请求并将结果显示在View上 到这里,基本工作已经差不多了,当然我们说的差不多了只是快能看到成果了,其中需要讲解的地方还有很多,最后一步我们在view中请求数据,并将结果绑定在adapter

    4.1K30

    我懵了,面试大厂被熟悉的App启动流程和RecycleView连环三问坑了...

    ActivityManagerService,主要负责系统中四大组件的启动、切换、调度及应用进程的管理和调度等工作,对于一些进程的启动,都会通过Binder通信机制传递给AMS,再处理给Zygote。...2)又比如插件化,通过了解启动流程可以知道哪些地方可以用来hook,从而完成我们侵入代码,替换Activity的工作。...,给到用户更多的自定义可能 Recycleview去掉了设置头部底部item的功能,专向通过viewholder的不同type实现 Recycleview实现了一些局部刷新,比如notifyitemchanged...Recycleview自带了一些布局变化的动画效果,也可以通过自定义ItemAnimator类实现自定义动画效果 Recycleview缓存机制更全面,增加两级缓存,还支持自定义缓存逻辑 Recycleview...mViewCacheExtension(自定义缓存),不直接使用,需要用户自定义实现,默认不实现。

    3.2K00

    Kotlin京东业务实战 | 强大又简洁的JVM语言

    作 者 简 介 赵振华——京东商城资深工程师 9年以上开发经验,熟悉主流移动开发框架,热衷于探索新技术,曾负责过店铺、JDReact架构等项目的开发工作,目前专注于京东App领券中心频道开发,以及移动端技术难点攻克和新技术调研实施...setOnClickListener( object : View.OnClickListener { override fun onClick(v: View) {...)等等工作。...Kotlin将我们本来在代码层做的一些封装工作转移到了编译后端阶段,使得语言更加简洁。...统计业务模块的Java实现和Kotlin实现的代码量,不包含xml布局文件,代码量减少超过20%;代码减少最多的为pojo类,减少比例甚至超过80%;业务逻辑代码减少10%,同时代码会更加简洁直观,有助于提高代码可维护性

    1.7K00
    领券