首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Jetpack学习笔记
哈喽呀
创建于2021-05-18
订阅专栏
Jetpack学习笔记
暂无订阅
共11篇文章
创建于2021-05-18
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
JetPack学习笔记之DataBinding(五)
使用ObserverField实现数据的双向绑定,即字段变化时,控件中的内容会随之变化,当控制中的内容变化时,字段的值也会相应的变化。 2、编写一个用于存放与实现双向绑定相关的业务逻辑类。 注意点有两处,一是在get和set方法上添加@Bindable注解,二是在set方法中判…
JetPack学习笔记之DataBinding(四)
为了让布局文件能够承担更多的工作,处理更复杂的业务逻辑,DataBinding库允许我们自定义BindAdapter,下面将通过ImageView演示如何自定义BindAdapter。 1、准备工作,添加Picasso依赖,分配网络权限。 2、编写处理图片的BindAdapte…
JetPack学习笔记之DataBinding(三)
在编写布局文件的过程中,会遇到布局层次结构复杂或者布局文件在其他布局文件中可以复用的情况,此时我们会将布局文件抽象为一个单独的文件,在其他布局文件中通过include标签引入,此时通过include标签引入的布局文件就成为二级页面,而使用include标签的文件称为一级页面。前…
JetPack学习笔记之DataBinding(二)
上一篇文章中介绍了DataBinding的基本使用方法,通过DataBinding让布局文件承担了属于Activity的工作,下面介绍使用DataBinding让布局文件响应用户事件的方法。 1、创建事件响应类。 注: 事件响应方法必须含有View参数。 2、编写布局文件。 共…
JetPack学习笔记之DataBinding(一)
布局文件通常只负责UI控件的布局工作,页面通过setContentView()方法关联布局文件,然后通过View的id找到控件,然后才能在代码中对View进行操作。可以说页面(Activity或者Fragment)承担了大部分的工作量。DataBinding 的出现让布局文件承…
JetPack学习笔记之ViewModel
在页面功能较简单的情况下,通常将UI的交互、数据获取等业务全部写在页面中,即通常的MVC模式。但是在页面功能较复杂的情况下,这样做不合适,因为它不符合单一职责原则,页面只应该负责处理用户与UI的交互部分,并将数据展示到页面上,与数据相关的业务逻辑应该单独处理和存放。 Andro…
JetPack学习笔记之Navigation(三)
Navigation组件还提供了一个很实用的特性DeepLink,即深层链接。通过该特性,可以利用PendingIntent或一个真实的URL链接,直接跳转到应用程序中的某个页面(Activity或者Fragment)。 PendingIntent的方式。当应用程序接收到某个通…
JetPack学习笔记之Navigation(二)
JetPack引入了NavigationUI组件,使得APP Bar中的按钮和菜单可以和导航图中的页面关联起来。比如上文中的例子中,不是通过按钮,而是想通过菜单跳转到第二个Fragment,可采用如下方式。 1、创建menu.xml文件,并将item的id设置为第二个Fragm…
JetPack学习笔记之Navigation(一)
谷歌提供的Navigation组件,旨在管理页面和APP Bar。其中页面包含Activity和Fragment,但是主要是指Fragment,因为开发Navigation的主要目的就是方便在一个Activity中对多个Fragment进行管理。它具有以下的优点。 可视化的页面…
JetPack学习笔记之LifeCyCle(二)
上文介绍了使用LifeCycle监听Activity和Service生命周期变化的方法,本文介绍监听Service和Application的生命周期的方法。 在创建Service时,将父类修改为LifecycleService,其继承了Service并实现了LifecycleO…
JetPack学习笔记之LifeCyCle(一)
普通组件在使用过程中通常需要依赖于系统组件的生命周期,有时候,我们不得不在系统组件的生命周期回调方法中,主动去调用普通组件的方法,或者对其进行控制,因为普通组件无法获知系统组件生命周期事件。 我们希望我们自己定义的组件,不依赖于页面生命周期的“回调方法”,在页面生命周期变化的时…