TabLayout是Android 的Material Design包中的一个控件,可以和V4包中的ViewPager搭配产生一个联动的效果。这里我自定义了一个滑块能够跟随T...
![240](https://cdn2.jianshu.io/assets/default_avatar/15-a7ac401939dd4df837e3bbf82abaa2a8.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
TabLayout是Android 的Material Design包中的一个控件,可以和V4包中的ViewPager搭配产生一个联动的效果。这里我自定义了一个滑块能够跟随T...
本篇只是个人的学习笔记,建议移步面试官:听说你熟悉OkHttp原理?[https://juejin.cn/post/6844904087788453896#heading-0...
mmap基本概念 正常文件读写的操作一般是先去页缓存里读文件内容,拿到之后进行想要的操作,然后再写入页缓存里面就可以了,而页缓存与文件相关联,对文件进行读写操作都要经过页缓存...
冒泡排序 对于一个数组来说,每次相邻两个元素进行比较,如果第二个元素小于第一个元素就进行交换(升序排序的情况),这样子每次循环完毕后,待排序数组里面最大的值都会移动到末尾,下...
持久化的五种方式 安卓有五种方式实现持久化,内部存储、网络存储、SharedPreferences、SQLite、外部存储(SD卡)。 SharedPreferences 是...
数据库事务的四个基本特征 原子性:事务包含的所有操作,要么成功,要么全部失败。 一致性:同一个事务来说,执行成功后使数据库从一个一致性状态变成另一个一致性状态。如果数据库系统...
复习提纲: 栈 栈算是一种特殊的线性表,有后进先出的特性,只需要在一端进行入栈(插入数据)或者出栈(删除数据)的操作。要实现的话从数组和链表两方面来考虑。 数组实现 一般选择...
缓存机制 ListView的RecycleBin机制 首先,你将会有一个view数组mActiveViews,还有一个ArrayList<View>的mScrapView,这...
本文基于郭神的Glide最全解析[https://blog.csdn.net/guolin_blog/category_9268670.html]总结 Glide4.0基本用...
单例模式作为设计模式之一,有饿汉式单例,懒汉式单例,静态内部类式单例,枚举式,检测双重锁单例这里写的是双重锁单例 如果不加volatile关键字会造成什么问题 为什么要加vo...
三大特性 封装是指类的信息隐藏起来,不能给外部直接访问(可以反射获取),但是提供了公有的方法来获取他。 继承是指一个类继承另一个类,就会继承他的公有属性和方法,并可以进行扩展...
进程,线程,协程 进程是系统运行一个应用的基本单位,安卓中一个应用程序就是一个进程。线程是比进程更小的执行单位,一个进程可以多个线程,安卓中一般有一个主线程,如果要执行其他耗...
jvm组成 借用Java虚拟机(JVM)面试题[https://cloud.tencent.com/developer/article/1612373]的图来看jvm jvm...
复习范围: ArrayList与LinkedList区别 线程安全:两个都是不同步的,即不保证线程安全 数据结构:ArrayList用的是数组实现,LinkedList用的是...
思维导图(复习范围) 计算机网络体系结构 OSI七层结构概念非常清晰,理论比较完整,但是他不实用,也很复杂。TCP/IP是一个四层的结构,一般应用广泛。五层体系结构则是综合了...
Retrofit的基本使用之后,可以搭配RxJava来进行网络申请,使得复杂的异步回调代码变得比较简单,比较容易让人看懂 在retrofit的基础上使用rxjava 接口方面...
基本概念 Retrofit是对http网络请求框架的封装,一般由okhttp来负责网络请求,retrofit对请求接口进行封装。retrofit通过接口和注解来描述我们的网络...