自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 笔记_AsyncTask

1. AsncTask的原理:任务线程池+执行线程池+Handler(InternelHandler) 2.构造方法的源码分析 3.execute方法的源码分析

2020-06-03 17:48:16 101 1

原创 Note_Callable

Callable是什么?? java.util.concurrent.Callable是一个泛型接口,只有一个call()方法 call()方法抛出异常Exception异常,且返回一个指定的泛型类对象 为什么要使用Callable接口 可以在任务结束后提供一个返回值,Runnable不行 call方法可以抛出异常,Runnable...

2020-05-08 15:34:51 154

原创 笔记_View的事件体系

View的事件体系 View的基础知识 View的继承关系 ViewGroup:View:Object View的位置参数 left、top、right、bottom【属于View的初始值,不会改变】 x、y、translationX、translationY【在View进行平移变化的时候会跟着改变】 ...

2020-05-08 14:39:34 101

原创 笔记_Handler

Handler的使用 直接上代码 public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); se...

2020-05-08 12:06:35 98

原创 笔记_view的绘制流程

View的绘制流程 View的三大流程是通过ViewRoot来完成的 当Activity对象被创建后,会将DecorView添加到Window中,然后会将ViewRootImpl和DecorView建立起关联。 View的绘制流程从ViewRoot的performTraversals开始,这个方法会依次调用performMeasure、performLayout、perf...

2020-05-08 09:53:16 71

原创 笔记_第八章 多媒体的使用

第八章 多媒体的使用 通知的使用 首先需要获取NotificationManager对通知进行管理 NotificationManager manager = getSystemService(Context.NOTIFICATION_SERVICE); 使用support库中 提供的NotificationCompat类来创建notifica...

2020-05-06 15:47:03 110

原创 笔记_第七章 内容提供器

第七章 内容提供器 运行时权限申请 通过ContextCompat.checkSelfPermission()方法 判断用户是否给某个危险权限授权。方法接收两个参数,第一个是Context,第二个是具体的权限名。比如拨打电话的权限名是Manifest.permission.CALL_PHONE,然后使用返回值和PackageManager.PPERMISSION_GRANTED做比...

2020-05-06 15:45:51 126

原创 笔记_数据持久化

数据持久化 文件存储 openFileOutput、openFileInput 两个参数,第一个参数是不能包含路径的文件名,第二个是读写的模式,一般默认,会覆盖文件原有的内容。 SharedPreferences存储 通过上下文获取对象 写:获取editor对象,调用put方法的重载,最后apply提交 读:...

2020-05-06 15:45:19 56

原创 笔记_第五章

第五章 广播分类 标准广播,完全异步,所有广播接收器都会在同一时刻接收到广播,不可拦截 有序广播,同步广播,广播接收器按照优先级接收广播,同一时刻只会有一个接收器能收到广播,等接收器的逻辑处理完后,再把广播传递出去,也可以选择把广播拦截。 广播接收器可以根据自己感兴趣的广播进行注册,当感兴趣的广播发出时,接收器就会接收到广播并且在内部进行逻辑处理。 ...

2020-05-06 15:44:27 72

原创 笔记_第四章

第四章 碎片的简单使用 动态: 通过碎片管理者开启事务,在事务中管理碎片,最后提交事务 静态:在布局文件中使用fragment标签并指定对应的类 ...

2020-05-06 15:41:29 70

原创 笔记_第三章

第三章 常用控件的使用方法 RecyclerView 对应的适配器是RecyclerView.Adapter< MyViewHolder> 可以指定三种布局:线性,网格,瀑布

2020-05-06 15:40:58 79

原创 笔记_第二章

第二章 创建菜单 res下新建menu文件夹,在menu下新建Menu resource file。 使用<item id = "" title = "”/>创建菜单项 id 是这个菜单项的唯一指定标识符 通过title给这个菜单起一个名称 然后在Activity中重写 boolean OnCr...

2020-05-06 15:40:21 151

原创 笔记_第一章

第一章: Android系统构成: Linux内核级: 为Android设备的各种硬件驱动提供底层的驱动,使得应用程序可以正常的使用这些硬件 例如摄像头、麦克风、显示屏等 Android系统运行库 C/C++库:为Android提供了主要的特性支持。 例如SQLite库、OpenGL|ES库...

2020-05-06 15:39:51 110

原创 笔记_ConcurrentHashMap

ConcurrentHashMap 并发安全 jdk1.7的ConcurrentHashMap:分段锁 ConcurrentHashMap中的数组 Segment[] table Segment,相当于HashMap中的Entry HashEntry[] table 首先计算出segment数组的大小和每一个segment下面的e...

2020-05-06 15:38:57 79

原创 笔记_android架构

MVC架构 M:model:负责网络请求,数据库操作等耗时操作 V:view:具体展示数据的布局,控件 C:Controler:Activity、Fragment等:负责从用户的操作中获取数据,业务处理逻辑,将数据交给model,将返回的结果交给view显示 mvc将数据的处理操作从Activity中抽离,但是Activity和view仍然没有很好的解耦,业务操...

2020-05-06 15:37:43 65

原创 AIDL 随笔

aidl 全称的意思是 应用接口定义语言,听起来是完全不认识的语言,但实际上写起来和java语言定义接口interface的语法差不多,作用就是用来定义接口,但是这个接口的特点是专门用来给远程的应用调用的(按照我目前的理解),这里的远程指的是不同的进程,其中一个进程作为服务端来提供这个aidl接口,当然接口里面有接口的方法,来给另一个进程中的客户端来访问,简单来说aidl的作用就是实现了跨进程的方...

2020-04-16 15:36:56 73

原创 在ViewPager下实现自定义Indicator

自定义ViewPager的指示器 前言 在之前的项目里面有很多地方都需要使用指示器来给viewpager指示当前页面位置,一开始是想自己实现的,但是考虑到时间不够,就直接到网上找相关的资源,当然网上也有很多类似的实现(我找到的是viewpagerindicator,github和maven上都能找到),但是网上的样例往往都和自己想要的样式不一样,寻思着问题不大,只要稍微改改就好了...

2020-04-10 11:45:01 209

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除