Android
Android学习
飘逸解构
这个作者很懒,什么都没留下…
展开
-
Android项目中Loading对话框的优化
1.ContentLoadingProgressBar介绍最近在学习开源项目的时候偶然看到了ContentLoadingProgressBar这个控件,此前我没有接触过,就想着了解一下它的功能。从名称上看,ContentLoadingProgressBar应该和ProgressBar有着什么联系,项目中也是把它当做ProgressBar来使用的,点进源码一看,果然ContentLoadingProgressBar是继承自ProgressBar的。public class ContentLoadingPr原创 2020-05-14 08:38:22 · 1626 阅读 · 0 评论 -
ViewPager2中的Fragment懒加载实现方式
前言ViewPager2是官方推出的新控件,从名称上也能看出是用于替代ViewPager的,它是基于RecyclerView实现的,因此可以实现一些ViewPager没有的功能,最实用的一点就是支持竖直方向滚动了。虽然很早就听说过,但是从一些文章中也多少了解到ViewPager2使用的一些坑,也就一直没有正式使用过。前不久ViewPager2发布了1.0.0正式版,心想是时候尝试一下了。哈哈...原创 2020-01-13 16:31:23 · 22704 阅读 · 21 评论 -
Android 10获取设备标识方案探究
前言我们在开发中可能会使用到一些第三方的应用统计SDK,用于统计应用的用户量等等,如何区分每个用户呢?当然就需要每个设备对应一个唯一的标识,Android中当然也提供了这样的API来获取到设备相关标识,但遗憾的是随着Android版本的迭代,官方对于用户隐私的权限越来越严格,在最新的Android 10版本中甚至已经无法通过原来的一些API来获取到设备相关标识了。本文就来探究一下Android...原创 2019-12-27 10:47:09 · 5650 阅读 · 3 评论 -
Android 9.0 Toast源码改变引发的问题
问题描述在Android开发中,Toast的重复显示问题很早就有人提出了解决方案,具体做法就是全局使用一个Toast对象,就像下面这样:private static Toast mToast = null;/** * 显示一个Toast提示 * * @param context context 上下文对象 * @param text toast字符串 * @param ...原创 2019-10-26 10:35:54 · 2548 阅读 · 2 评论 -
androidx中的Fragment懒加载方案
在进入正文之前要强调一下,本文的分析基于androidx 1.1.0版本,文中提到的setMaxLifecycle()方法是1.1.0-alpha07版本才引入的。最近把Android Studio更新到了3.5版本,新建项目时发现竟然已经强制使用androidx包了。于是想着把以前项目中的一些公共类,像BaseActivity、BaseFragment等等都迁移到androidx方便今后的...原创 2019-10-13 12:19:15 · 16134 阅读 · 11 评论 -
Android自定义View的基石——View工作原理总结
前言View可以说是我们在Android开发中接触得最多的一个类了,虽然不属于四大组件,但是发挥的作用却一点都不亚于四大组件,页面中的各种控件、布局都直接或间接地继承自View,可以说View无处不在。因而了解View的工作原理能让我们更好地处理开发中的诸多问题,尤其是对于老生常谈的自定义View来说,View的工作原理更是必须要掌握的。在进入正文之前还是要强调一下,本文的分析基于Andr...原创 2019-09-10 12:00:56 · 1384 阅读 · 0 评论