首页
学习
活动
专区
圈层
工具
发布

学习笔记 | Android Studio安卓开发入门经验总结 干货

版本,构建脚本的仓库,依赖包仓库。...onDestroyView():Fragment的视图已经被销毁,但与Activity的关联未销毁,仍然可以重新创建视图。...和ListView类似,要将数据适配到视图上进行展示需要使用适配器Adapter,不同的是RecyclerView的BaseAdapter已经将viewholder模式封装好了,而目前RecyclerView...,本项目中还是用最原始的ListView和RecyclerView的自带适配器。...3.3.6 适配器理念Adapter 如上所说,列表视图需要一个中间件:适配器,来将数据适配到布局上,这是一个从结构化的数据到结构化的视图的中间过程,纵观整个项目开发,可以发现有很多地方在使用这样的理念

5.1K60

Android:手把手带你全面学习常见的RecylerView!

答:从名字上看RecyclerView,即回收循环视图,也就是说RecyclerView只管回收与复用View,其他的你可以自己去设置,可以看出其高度的解耦,给予你充分的定制自由 2.2 缺点 RecyclerView...基础概念 4.1 RecyclerView.Adapter 和ListView一样,RecyclerView一样需要适配器,而且这个适配器强制要求了我们必须要用Viewholder,让性能得到优化,而且...使用步骤 定义主xml布局 根据需要定义RecyclerView每行所实现的xml布局 定义一个Adapter类继承RecyclerView.Adapter,重写里面的方法。...定义一个HashMap构成的列表,将数据以键值对的方式存放在里面。 构造Adapter对象,设置适配器。 将RecyclerView绑定到Adapter上。 6....构造Adapter对象,设置适配器 将RecyclerView绑定到Adapter上 MainActicity.java package scut.receiverview; import android.os.Bundle

1.1K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【Jetpack】DataBinding 架构组件 ⑥ ( RecyclerView 数据绑定 )

    , 并 导入 RecyclerView 依赖 , 在 Module 模块下的 build.gradle 构建脚本 中 , 配置如下内容 : android { // 启用 DataBinding 数据绑定...RecyclerView.Adapter 适配器要点 ( 本博客重点 ★ ) 在 自定义 RecyclerView.Adapter 适配器 中 , 需要 实现对 RecyclerView 条目 DataBinding...布局设置给自定义 RecyclerView.ViewHolder 实例 : 将上面创建的 ItemBinding 对象通过 构造函数设置到 MyViewHolder 中 ; override...数据绑定源码示例 ---- 1、build.gradle 构建脚本 ( 启用数据绑定 / 导入依赖 ) 在 Module 模块下的 build.gradle 构建脚本 中 , 主要是 启用 DataBinding...的 布局管理器 / 数据适配器 activityMainBinding.recyclerView.layoutManager = LinearLayoutManager(this)

    1.3K20

    安卓天气预报app(三)——城市管理、数据库操作

    位置商丘的信息成功插入,插入之后,后续要进行的操作就是实时更新数据库 涉及内容 SQLite数据库操作,创建数据库,新建表,增删查改操作 适配器adapter添加点击事件 页面传值跳转项目结构...其他内容暂不涉及,本文章只包含城市管理,添加城市到数据库等的一系列操作,前面基础内容移步到页首地址界面设计 城市管理的界面设计city_manager.xml city_manager.xml界面布局源码... 适配器就是决定在此城市管理页面的RecyclerView中展示哪个页面,跟之前一样,前几篇文章都有篇幅概括,基本的一些操作就是, 添加一个构造方法...来绑定控件,此时在城市管理页面要求点击某个城市,需要传值到MainActivity,并获取指定点击城市的天气信息 所以适配器中添加一个点击事件,首先在适配器中添加接口 public interface...,自行拓展,只要工具类删除方法写对,无非就是添加个事件调用删除方法 更精细化的搜索城市,主动根据搜索到的城市添加城市到数据库,后篇文章会逐渐完善,此篇文章主要是数据库的一些操作和适配器添加点击事件,订阅此栏可同步获取项目搭建过程

    2.1K30

    Carson带你学Android:手把手带你深入学习RecylerView

    答:从名字上看RecyclerView,即回收循环视图,也就是说RecyclerView只管回收与复用View,其他的你可以自己去设置,可以看出其高度的解耦,给予你充分的定制自由 2.2 缺点 RecyclerView...基础概念 4.1 RecyclerView.Adapter 和ListView一样,RecyclerView一样需要适配器,而且这个适配器强制要求了我们必须要用Viewholder,让性能得到优化,而且...使用步骤 定义主xml布局 根据需要定义RecyclerView每行所实现的xml布局 定义一个Adapter类继承RecyclerView.Adapter,重写里面的方法。...定义一个HashMap构成的列表,将数据以键值对的方式存放在里面。 构造Adapter对象,设置适配器。 将RecyclerView绑定到Adapter上。 6....构造Adapter对象,设置适配器 将RecyclerView绑定到Adapter上 MainActicity.java package scut.receiverview; import android.os.Bundle

    82520

    【Android 事件分发】ItemTouchHelper 实现拖动排序

    适配器中的交换排序操作 三、完整代码实现 1、主界面 2、ItemTouchHelper.Callback 回调类 3、执行效果 三、博客资源 一、ItemTouchHelper.Callback...getMoveThreshold 方法 , 设置用户的拖动距离 , 组件在宽度 / 高度 上移动超过该比例 , 就认为拖动触发, 执行拖动相关操作 ; 设置的是比例值, 返回值为 0.9 , 就意味着滑动宽度..., 是拖动后的的位置条目 ; 可以通过调用 RecyclerView.ViewHolder 的 getAdapterPosition 方法 , 可以获取该条目的索引值 ; public class...适配器中的交换排序操作 删除数据列表中的元素 , 并调用 notifyItemRemoved 触发删除动画 ; public class Adapter extends RecyclerView.Adapter...从布局中获取 RecyclerView recycler_view = findViewById(R.id.recycler_view); //2 .

    2.8K10

    【Android 事件分发】ItemTouchHelper 实现侧滑删除

    适配器中的删除操作 三、完整代码实现 1、主界面 2、ItemTouchHelper.Callback 回调类 3、执行效果 三、博客资源 一、ItemTouchHelper.Callback 配置侧滑删除...getSwipeThreshold 方法 , 设置用户的滑动距离 , 设置的是比例值, 返回值为 0.5 , 就意味着滑动宽度/高度的一半, 才触发侧滑 onSwiped 方法 ; public class...Callback extends ItemTouchHelper.Callback { /** * 用户滑动距离, 设置的是比例值, 返回值为 0.5 , 就意味着滑动宽度/高度的一半...()); } } 7、RecyclerView.Adapter 适配器中的删除操作 删除数据列表中的元素 , 并调用 notifyItemRemoved 触发删除动画 ; public...从布局中获取 RecyclerView recycler_view = findViewById(R.id.recycler_view); //2 .

    1.2K20

    【RecyclerView】 十一、RecyclerView 数据更新 ( 删除单条数据 | 批量删除数据 )

    void notifyItemRemoved(int position) 方法 , 传入的参数是被删除元素的索引 ( 删除之前的索引值 ) ; 该方法的作用是通知任何被注册的观察者 , position..., 只会刷新与该位置相关的 item 元素 , 不会刷新其它元素 , 即使数据改变了 , 也不会刷新 ; 也就是说 RecyclerView 只刷新涉及到的 positionStart ~ positionStart...+ itemCount 之间的这几个元素 , RecyclerView 中的其它 item 元素不变 ; 代码示例 : 删除前 3 个数据 , 通知适配器 , 原数据集中的从第 0 个元素开始的..., 从 positionStart 位置开始的的 itemCount 个 item 元素对应的数据被从数据集中删除 ; * 该位置之后的元素 ( 原来的位置是 oldPosition..., 这些数据不会被重新绑定 , * 尽管它们的位置已经发生了变化 ; * 也就是说 RecyclerView 只刷新涉及到的 positionStart ~ positionStart

    4.5K00

    【RecyclerView】 十二、RecyclerView 数据更新 ( 修改单条数据 | 批量修改数据 )

    void notifyItemChanged(int position) 方法 , 传入的参数是被删除元素的索引 ( 删除之前的索引值 ) ; 该方法的作用是通知任何被注册的观察者 , position...; 注意 : 调用该方法后 , 只会刷新与该位置相关的 item 元素 , 不会刷新其它元素 , 即使数据改变了 , 也不会刷新 ; 也就是说 RecyclerView 只刷新涉及到的 position...; * 也就是说 RecyclerView 只刷新涉及到的 positionStart ~ positionStart + itemCount 之间的这几个元素 ,..., 这些数据不会被重新绑定 , 尽管它们的位置已经发生了变化 ; 也就是说 RecyclerView 只刷新涉及到的 positionStart ~ positionStart + itemCount..., * 尽管它们的位置已经发生了变化 ; * 也就是说 RecyclerView 只刷新涉及到的 positionStart ~ positionStart +

    4.9K00

    【RecyclerView】 十三、RecyclerView 数据更新 ( 移动数据 | 数据改变 )

    这是一个结构性的变化事件 ; 表示在数据集中的其它元素仍然被认为是最新的数据 , 这些数据不会被重新绑定 , 尽管它们的位置已经发生了变化 ; 也就是说 RecyclerView 只刷新涉及到的 fromPosition..., 这些数据不会被重新绑定 , * 尽管它们的位置已经发生了变化 ; * 也就是说 RecyclerView 只刷新涉及到的 fromPosition 和 toPosition...和 结构性改变 ; ① item 元素改变 : 指的是单个的 item 的数据更新 , 但是位置没有改变 ; ② 结构性改变 : 指的是有新的数据被插入 , 删除 , 移动 , 位置发生了改变 ; 参数说明...; * * 如果适配器调用了本方法 , 通知数据发生了改变 , RecyclerView 会尝试去 为适配器 同步可见的结构性改变事件 ;...从布局中获取 RecyclerView RecyclerView recycler_view = findViewById(R.id.recycler_view); /

    4.4K00

    在 View 上使用挂起函数 | 实战

    但不幸的是,这导致了在点击的时候动画异常 (0.2 倍速展示): 实际效果并没有从点击的条目展开,而是从顶部展开了一个看似随机的条目。...这个 ID 映射到了季份列表中的某一集; 该集的条目可能还没有被添加到 RecyclerView 中,需要用户展开该季份的列表,然后将其滑动展示到屏幕上,这样我们需要的视图才能被 RecyclerView...) // TODO 等待 ViewModel 分发新的状态 // TODO 等待 RecyclerView 的适配器对比新的数据集 // TODO 等待 RecyclerView...) // 1.等待新的数据下发 // 2.等待 RecyclerView 适配器对比新的数据集 // 滑动 RecyclerView 直到指定的剧集展示出来 recyclerView.scrollToItemId...continuation.invokeOnCancellation { unregisterAdapterDataObserver(observer) } // 将观察者注册到适配器上

    2.4K30

    【Android】RecyclerView多布局展示案例

    初始化适配器并传递数据 创建ArticleMoreAdapter实例(适配器是RecyclerView与数据之间的桥梁)。...通过adapter.setArticles(articles)将数据源传递给适配器,适配器内部会调用notifyDataSetChanged()通知RecyclerView:“数据已更新,请重新渲染”。...三、RecyclerView 渲染阶段(核心流程) RecyclerView通过适配器(ArticleMoreAdapter)完成从数据到 UI 的渲染,核心步骤由getItemCount、getItemViewType...(作用:将数据源中的数据 “填充” 到布局控件中,最终展示到屏幕上) 我只能说非常这一集炸裂,搞了好久,终于从宏观角度把代码逻辑梳理清楚了 package com.xlong.myapplication.recyclerview...适配器接收数据并通知RecyclerView更新。 RecyclerView依次调用: getItemCount → 确定展示 22 条数据。

    29910

    移动开发作业一

    Activity: 创建一个主 Activity,用于承载整个门户框架应用。 为每个选项卡页面准备一个对应的 Fragment。 2....RecyclerView: 在每个 Fragment 中,使用 RecyclerView 控件来显示列表数据。 创建一个适配器类,用于将数据与 RecyclerView 绑定。...适配器类应根据每个选项卡的数据需求自定义,包括数据源、视图绑定和点击事件处理。 使用布局管理器(例如 LinearLayoutManager)来定义列表项的排列方式,可以是垂直或水平。...图片 该适配器充当RecyclerView和消息数据之间的桥梁,负责加载布局、填充数据,并将数据正确显示在屏幕上。...LayoutInflater.from(parent.getContext()).inflate(R.layout.item_message, parent, false),从布局文件item_message.xml

    77330

    Android开发:ListView、AdapterView、RecyclerView全面解析

    RecyclerView的重要概念介绍 RecyclerView.Adapter 和ListView一样,RecyclerView一样需要适配器,而且这个适配器强制要求了我们必须要用Viewholder...答:从名字上看RecyclerView,即回收循环视图,也就是说RecyclerView只管回收与复用View,其他的你可以自己去设置,可以看出其高度的解耦,给予你充分的定制自由 缺点: RecyclerView...实现控制点击、长按事件较为麻烦,需要自己写 使用实例 使用RecyclerView的步骤: 定义主xml布局 根据需要定义RecyclerView每行所实现的xml布局 定义一个Adapter类继承RecyclerView.Adapter...定义一个HashMap构成的列表,将数据以键值对的方式存放在里面。 构造Adapter对象,设置适配器。 将RecyclerView绑定到Adapter上。...- 构造Adapter对象,设置适配器 - 将RecyclerView绑定到Adapter上 MainActicity.java package scut.receiverview; import

    4.3K30

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

    一、文章快速总结RecycleView是安卓的列表,可以灵活控制每一项的数据,布局,动画。Adaper是整体适配器,逻辑放在这里。Holder是每一项的内容,把控件初始化放在这里。...可以看到该适配器类主要有3个方法和1个自定义ViewHolder组成:onCreateViewHolder: 创建ViewHolder并返回,后续item布局里控件都是从ViewHolder中取出。...onBindViewHolder: 通过方法提供的ViewHolder,将数据绑定到ViewHolder中。getItemCount: 获取数据源总的条数。...使用方法://设置适配器adaptermRecycleView.setAdapter(mAdapter);LayoutManager  布局管理器,通过不同的布局管理器来控制item的排列顺序,负责item...这里要注意的是,更新数据集要用notifyItemInserted(position)与notifyItemRemoved(position) ,而不是notifyDataSetChanged(),否则没有动画效果

    1.2K11
    领券