自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

NYC的博客

只争朝夕

  • 博客(44)
  • 收藏
  • 关注

原创 ES6 入门重点摘录-下

ES6 入门重点摘录-下摘录出ES6在实际使用过程中的一些重点一、SET和MAP1、SETES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。Set本身是一个构造函数,用来生成 Set 数据结构。const s = new Set();[2, 3, 5, 4, 5, 2, 2].forEach(x => s.add(x));for (let i of s) { console.log(i);}// 2 3 5 4上面代码通过add()

2020-12-14 12:04:45 278 1

原创 ES6 入门重点摘录-上

ES6入门笔记摘要一、ES6简介1、 什么是ES6?2015 年 6 月,ECMAScript 6 正式通过,成为国际标准。Node.js 是 JavaScript 的服务器运行环境(runtime)。它对 ES6 的支持度更高。使用下面的命令,可以查看 Node.js 默认没有打开的 ES6 实验性语法。// Linux & Mac$ node --v8-options | grep harmony// Windows$ node --v8-options | findst

2020-12-11 19:40:58 1356

原创 JavaScript入门系列二:JavaScript函数和内置对象

JavaScript入门系列二:JavaScript函数和内置对象说明:主要记录一些和Java语言一些不同的地方1、弹出对话框Alert的使用:弹出一个提示窗 <script> var age=15; if(age<18){ alert("您还没有成年") } </script>2、接收用户输入的弹窗:promptprompt接收用户

2020-07-05 11:45:13 3423

原创 H5入门一:基础标签摘要

H5入门一:基础标签摘要HTML标签大小写不敏感HTML5在2014年定稿P标签:段落标签,align=jusitfy两端对齐&nbsp是空格,br是换行标签保持文本原有样式(比如换行和空格),类似Kotlin中三个引号的功能“““i 标签:文本斜体,b,strong:文本加粗标签常用的一些特殊符号:ul无序列表ol有序列表定义列表图像标签图片相对路径:超链接标签锚的定义通过a标签的name定义锚名

2020-06-25 18:34:30 336 1

原创 详解Kotlin中的Lambda

Kotlin中的Lambda表达式目录:1、Lambda介绍在上面已经提到了在Java中已经被广泛的运用,但是也是在Java8的时候才支持这种Lambda表达式。在其他的编程语言中(例如:Scala语言)。而这种表达式是语法糖中的一种。值得庆幸的是,Kotlin一经开源成熟就已经支持这种语法。Lambda表达式的本质其实是匿名函数,因为在其底层实现中还是通过匿名函数来实现的。但是我们在用的时候不必关心起底层实现。不过Lambda的出现确实是减少了代码量的编写,同时也是代码变得更加简洁明了。L

2020-06-19 18:11:24 610

原创 Xfermode原理与案例

Xfermode原理与案例目录:Xfermode的基本原理Xfermode的多种模式Xfermode的使用案例Xfermode的基本原理Xfermode是什么?在Android绘制中,通过使用Xfermode将绘制的图形的像素和Canvas上对应位置的像素按照一定的规则进行混合,形成新的像素,再更新到Canvas中形成最终的图形。像素组成的4元素:ARGB我们一个像素的颜色都是由四个分量组成,即ARGB,A表示的是我们Alpha值,RGB表示的是颜色S表示的是源像素,源像素的

2020-06-10 14:29:36 1189

原创 ConstraintLayout-那些很有用但是你可能不知道的用法

ConstraintLayout-那些很有用但是你可能不知道的用法前沿本篇不讲ConstraintLayout的常规用法,会讲一些约束布局很用的,但是可能你并不知道的用法一、B相对于A底部居中对齐如上图所示:需要B布局相对于A布局的底部垂直居中对齐,水平居中对齐方案1 使用LinearLayout为外层布局需要指定B一个固定高度给定B一个负的向上的margin,值为B高度的一半代码和效果如下所示:缺陷:很明显,如果只是使用XML布局的形式(不通过代码动态计算),B布局需要固定一个高

2020-05-19 18:08:03 6414 5

原创 JavaScript入门系列一:JavaScript数据类型与逻辑运算

H5入门10:JavaScript基础该力啊1、什么是JavaScript2、JavaScript是有ECMAScript、Browser Objects(DOM、BOM)组成的。3、如何使用JavaScript3、JavaScript基础语法概要ECMAScript中的一切(函数、变量、操作符等)都是区分大小写的...

2020-07-03 15:56:09 250

原创 H5入门系列9:CSS定位position

H5入门系列9:CSS定位PositionCSS3中的5中定位模型

2020-06-28 23:15:44 264

原创 H5入门系列8:Float浮动的使用

H5入门系列8:Float浮动的使用浮动的基础知识浮动会使元素向左或者向右移动,只能左右,不能上下浮动元素碰到包含框或者另一个浮动框,浮动停止浮动元素之后的元素将围绕它,之前的不受影响浮动元素会脱离标准流元素浮动后具备了inline-block的特性CSS 浮动Float的语法Float:left 靠左浮动Float:right 靠右浮动Float:none 不适用浮动CSS浮动产生的问题元素使用浮动后会脱离普通流,出现“高度塌陷”浮动溢出清除浮动清楚浮动的方

2020-06-27 23:11:49 1417

原创 H5入门7:CSS设置背景和列表样式

H5入门7:CSS设置背景和列表样式CSS背景样式CSS背景样式

2020-06-27 17:39:21 1044

原创 H5入门6:盒子模型

H5入门6:盒子模型1.什么是盒子模型盒子模型相关属性宽度属性高度属性哪些元素可以设置宽高边框属性边框样式设置不同方向上的边框属性,在中间加上方向即可padding的设置规则注:padding 不能设置负值外边距margin属性设置规则注意:margin是可以为负值的块级元素有默认外边距margin注意:- 如果垂直方向上,两个相邻的元素都设置外边距,外边距会合并,合并后外边距的高度采用的是外边距最大的那个值;-

2020-06-27 12:05:29 776

原创 H5入门5:CSS 字体和文本样式

H5入门5:CSS字体和文本样式概要:文字样式属性font-family字体属性font-size属性font-size绝对单位font-size相对大小,相对大小是相对父元素的计算值color属性==(注意:color前面没有font-前缀)==font-weight设置字体粗细font-style :为元素内文字设置样式font-variant 字体变形,设置元素中文本为小型大写字母font属性(各个属性的简写)使用fo

2020-06-26 21:53:51 2337

原创 H5入门四:CSS选择的艺术

H5入门四:CSS选择的艺术一、什么是CSSCSS层叠样式表(Cascading Style Sheets)用于定义HTML内容在浏览器里面的显示样式二、为什么学习CSS三、CSS基本内容CSS基础语法CSS 使用方法CSS选择器CSS集成和层叠CSS优先级CSS命名规范CSS基础语法CSS样式规则:CSS样式的引用CSS样式的引用方式行内样式内部样式CSS外部样式CSS导入样式CSS样式引用总结:CSS样式优先级关系CSS选择器CSS有哪

2020-06-26 19:42:54 228

原创 H5入门三:块级元素和行内元素

H5入门三:块级元素和行内元素一、行内元素和块级元素概括块级元素:div,P,form,ul,ol,address,fieldset,hr,menu,table行内元素:span,strong,em,br,img,input,label,select,textarea,cite,二、行内元素和块级元素详细行内元素(inline element)a -锚点abbr -缩写acronym -首字b -粗体(不推荐)bdo -bidi overridebig -大字体br

2020-06-26 09:57:52 1733

原创 H5入门二:表单和表单元素

H5入门二:表单和表单元素1. HTML表单元素Form表单的属性form表单元素2.Input表单元素input标签的属性例1:<!DOCTYPE html><html><head> <title>基础表单</title></head><body> <form> 姓名:<input type="text" name="username"> 密码:<

2020-06-25 20:26:52 246

原创 Android布局原理与优化

Android布局原理与优化目录:绘制原理CPU与GPUAndroid 图形系统的整体架构RenderThread硬件加速和软件绘制invalidate软件绘制流程invalidate硬件加速流程requestLayout流程布局加载原理获取界面布局耗时常规方式AOPLayoutInflaterCompat.setFactory2布局优化常规方案代码创建View替换MessageQueue来实现异步创建ViewAsynclayoutInflater异

2020-06-17 15:04:59 1262

原创 源码解析:Android中的Context

源码解析:Android中的Context目录:Context到底是什么Context 继承关系何时创建Context如何获取ContextgetApplication()和getApplicationContext()Application Context的设计正确使用ContextContext到底是什么Context的中文翻译为:语境; 上下文; 背景; 环境,在开发中我们经常说称之为“上下文”,那么这个“上下文”到底是指什么意思呢?在语文中,我们可以理解为语境,在程序中,我们

2020-06-11 14:51:18 219

原创 面试造火箭系列:一、Android 绘制原理

面试造火箭系列:一、Android 绘制原理目录View 树的绘图流程View 绘制流程函数调用链Measure 和 Layout 的具体过程自定义一个TagGroupView 树的绘图流程View树的绘图流程是由核心类:ViewRootImpl来处理的,ViewRootImpl作为整个控件树的根部,它是控件树正常运作的动力所在,控件的测量、布局、绘制以及输入事件的派发处理都由ViewRootImpl触发。核心成员变量这里我主要讲几个Handler:ViewRootHandler这

2020-06-10 19:21:29 489

原创 自定义View:循环垂直滚动的NestScrollView

自定义View:循环垂直滚动的NestScrollView前沿上一篇用Scrollview实现了垂直循环滚动的View,参考链接:自定义View:循环垂直滚动的Recyclerview本篇博客我们使用NestScrollView来实现相同的效果,效果如下图股东的用户平路部分实现思路分析自定义View继承自NestScrollView循环滚动通过handler不断发送延迟消息实现...

2020-06-07 15:14:16 1655 1

原创 自定义View:循环垂直滚动的Recyclerview

自定义View,循环滚动的Recycler view前沿产品规划要做一个循环滚动展示用户评价的效果,如下图所示,好吧,百度一下,谷歌一下,git上找找,看有没有能用的轮子,一番操作后,TMD,还真没找到能用的。虽然我不提倡重复造轮子,但自己一定要具备造轮子的能力啊,那就自己弄一个呗自己写一个AutoScrollView在干事之前,得先分析一下思路,算法复杂的画流程图,逻辑不清的画思维导图,分析思路,化繁为简,一步步来实现思路分析:自定义View继承自RecyclerView循环滚动通过ha

2020-05-21 19:07:50 884

原创 自定义View:优惠券布局

自定义View:优惠券布局效果图如图所示,这里主要是优惠券作为外层视图的绘制,需要绘制的内容如下:左边约占1/4宽度的背景色左边边缘半圆右边3/4宽度的背景色右边半圆思路分析首先:整体分为两部分绘制,左边的淡粉色部分和右边的白色部分,然后每一遍添加一个半圆,关键就是半圆这里怎么添加上去?这里用到Path,用两个Path,矩形的Path和圆形的Path,然后两个Path去相切得到目标效果实现自定义View ,这里我们继承自ConstraintLayout,方便内容的布局clas

2020-05-20 16:23:18 527 2

原创 布局优化:App布局层级分析和渲染速度分析

App布局层级分析和渲染前沿关于布局分析的文章,网上太多Hierarchy Viewer相关的文章,但是现在Aandroid Studio 都更新到3.6.X了,这个工具早废弃了,能够真正有用的文章少之又少,所有才有了本篇的文章,使用最新的布局分析工具目的基于最新的Android Studio 版本(目前3.6.1),使用最新的工具,进行Android 布局的层级分析和渲染速度分析一、层级分析使用Layout Inspector即可实现布局层级的分析,这个还是比较简单的,直接打开tools1、

2020-05-18 09:58:03 716

原创 Android Gradle构建思维导图

Android Gradle构建思维导图一张图完全解析Android 的gradle 构建

2020-04-17 11:30:48 382

原创 Kotlin高级:内联类Inline Class

Kotlin 高级 :Inline Class内联类有时候,业务逻辑需要围绕某种类型创建包装器。然而,由于额外的堆内存分配问题,它会引入运行时的性能开销。此外,如果被包装的类型是原生类型,性能的损失是很糟糕的,因为原生类型通常在运行时就进行了大量优化,然而他们的包装器却没有得到任何特殊的处理。为了解决这类问题,Kotlin 引入了一种被称为 内联类 的特殊类,它通过在类的前面定义一个 inl...

2020-04-07 17:47:20 859

转载 Android Studio中竟然还能加入一个程序员鼓励师

Android Studio中竟然还能加入一个程序员鼓励师前言Android Studio是我们Android开发的标准IDE,同时它也是Flutter开发的推荐IDE。工欲善其事必先利其器,想要爽心悦目地写代码,首先需要打造一个好看又能打的开发环境。Android Studio安装之后的默认字体太小,Logcat显示区的日志并不显眼,三种自带主题(Darcula、High contrast、...

2020-01-10 17:04:42 2265

转载 面试造航母,工作拧螺丝?各种缘由大揭秘!

面试造航母,工作拧螺丝?各种缘由大揭秘!最近,程序员圈子里流行着一种说法:面试造航母,工作拧螺丝。它描述了程序员工作中的一种怪象,面试的问题各种高大上:什么分布式事务怎么实现啊什么消息队列怎么保证幂等性啊什么JVM的调优啊。。。。。。诸如此类然而,过五关斩六将,一路拼杀下来,终于拿到了心仪的offer,入职以后,每天干的工作却是一些简单的增删改查,又或者是技术性不强的业务代码编写,...

2020-01-10 16:15:59 2805

原创 学会提问

学会提问

2020-01-10 14:21:07 2119 1

原创 如何阅读一本书

如何阅读一本书

2020-01-10 14:18:31 2128

转载 全面认识Android OS

12313

2020-01-10 11:48:40 2751

原创 【Jetpack Compose最新版详解】(持续更新)

【2020】Android开发颠覆性的一年拉开序幕

2020-01-05 22:46:45 8613 4

原创 App性能优化:内存优化

App性能优化:内存优化本篇主要探讨app性能优化相关的知识点,预计20年2月底前完成内存优化工具内存管理机制内存都懂解决内存泄漏解决MAT详解小结...

2020-01-03 14:22:41 2474

原创 App性能优化:启动优化篇

性能优化:启动优化篇本篇主要探讨App启动优化相关内容,预计19年2月底前完成App启动简单流程启动优化时间测量启动优化工具异步初始化

2020-01-03 14:18:52 2335

原创 10大开源框架剖析之Glide,基于最新版4.10.1

10大开源框架剖析之Glide本篇主要剖析著名的图片加载框架 Glide,预计13年1月底前完成什么是GlideGlide作用Glide用法Glide的坑Glide源码从Glide学到了什么?总结...

2019-12-29 22:25:00 2410

原创 【2020】Android轮子,99个可以直接拿来用的代码片段(持续更新)

【2020】Android轮子,100个可以直接拿来用的代码片段(持续更新)1.EditText限制输入大于0的金额,其中mBalance是能输入的最大金额@Overridepublic void onTextChanged(CharSequence s, int start, int before, int count) { try { if (s.toString...

2019-12-25 18:51:43 2518

原创 Android 最佳实践

Android 最佳实践此篇文章主要用来记录一些在日常Android开发中比较好用的一些库或者方法1:TextView相关通用TextView的封装:https://github.com/lygttpod/SuperTextView带动画的文字:https://github.com/hanks-zyh/HTextView一个倾斜的TextView:https://github.com/...

2019-12-25 11:44:33 2210

原创 HashMap、HashTable和HashSet

HashMap的实现机制,怎么样让HashMap线程安全1、Java语言数据结构在 Java 编程语言中,最基本的结构就是两种,一个是数组,另外一个是指针(引用),HashMap 就是通过这两个数据结构进行实现。HashMap 就是通过这两个数据结构进行实现。HashMap实际上是一个“链表散列”的数据结构,即数组和链表的结合体。2、HashMap数据结构示意图2、HashMap构造函...

2019-12-25 11:03:40 1957

原创 JavaGC机制概要

JavaGC机制概要什么是GC?垃圾回收是一种自动的存储管理机制。当一些被占用的内存不再需要时,就应该予以释放,以让出空间,这种存储资源管理,称为垃 圾回收(garbage collection)。垃圾回收器可以让程序员减轻许多负担,也减少程序员犯错的机会。回收哪些内存?1、通过可达性分析算法,分析需要被回收的对象,没有被GCRoot对象引用的是可以被回收的。2、可以作为跟对象...

2019-12-25 10:43:39 2223 1

原创 Handler核心概要

Handler核心概要本篇主要总结Handler的一些十分重要和特性,先不对细节进行深入(比如消息循环是一个死循环为什么不会卡死线程等)在Android中提供了一种异步回调机制Handler,使用它,我们可以在完成一个很长时间的任务后做出相应的通知UI线程:就是我们的主线程,系统在创建UI线程的时候会初始化一个Looper对象,同时也会创建一个与其关联的MessageQueueHandl...

2019-12-25 10:10:17 2047

原创 HTTP 完全解析

Http 详解HTTP 的定义HTTP即是:Hypertext Transfer Protocol,超文本传输协议,⼀种⽹络传输协议,位于 TCP / IP 协议族的最顶层——应⽤层URL说到HTTP,不得不说URL,URL(统一资源定位符)是URI(统一资源标识符)的一个子集,用来标识网络上某一资源的位置。URL格式:三部分:协议类型、服务器地址(和端⼝号)、路径(Path)也即是...

2019-12-25 00:28:35 2912

空空如也

空空如也

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

TA关注的人

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