自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

赵彦军

做一只快乐的程序猿!

  • 博客(432)
  • 资源 (2)
  • 收藏
  • 关注

原创 Docker实战笔记5-利用 commit 理解镜像构成

转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/130338433本文出自。

2023-04-24 11:47:38 357 1

原创 Docker实战笔记4-安装jenkins

遇到问题,多看文档,多看文档,多看文档。

2023-04-23 13:01:53 529

原创 Docker实战笔记3-仓库

转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/130260521本文出自。

2023-04-20 10:43:46 533

原创 Docker实战笔记2-删除本地镜像

转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/130239544本文出自。

2023-04-19 11:07:27 606

原创 Docker实战笔记1-基础

Docker中用 Image 表示一个镜像。每一个集装箱都是一个镜像。给我们提供了一个 hello-world 镜像。在 mac 的 docker 客户端也能看到镜像。通过 Explore 查看官方提供的镜像。安装软件给的描述,依次执行命令。下载对应平台的软件并安装。查看docker 信息。docker 官方在。

2023-04-16 16:23:34 481

原创 Android 逆向工具大整理,碉堡了

就可以把需要分析的 apk 拖进去。

2023-02-09 19:45:42 6100 2

原创 Android 属性动画常见效果收集

转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/128948795本文出自属性动画往期博客。

2023-02-09 10:58:16 760 1

原创 Android SVG认知误区?

为了更好的视觉效果,经常在项目中使用了 svg (可缩放矢量图形),如下:查看包体积:查看apk 包体积,可以看到在 xhdpi、xxhpdi、xxxhpdi 分别生成了图片,并且有的比较大。

2023-02-06 20:14:04 647 1

原创 Android RecyclerView实现ViewPager效果,用LinearSnapHelper

SnapHelper是RecyclerView功能的一种拓展,使RecyclerView滑动行为类似ViewPager,无论怎么滑动最终停留在某页正中间。ViewPager一次只能滑动一页,RecyclerView+SnapHelper方式可以一次滑动好几页,且最终都停留在某页正中间。SnapHelper的实现原理是监听RecyclerView.OnFlingListener中的onFling接口。LinearSnapHelper是抽象类SnapHelper的具体实现。上面的效果只需下面几行代码即可。

2023-01-30 14:48:28 1212 1

原创 Android Glide 4.9 常见方法总结

DrawableImageViewTarget 代替原来的 SimpleTarget。图片会缩放 ,铺满 imageView , 四周会被裁剪。图片保持原来比例,在 imageView 中居中显示。submit 有两个方法。

2023-01-13 17:10:17 1171

原创 Android hilt 依赖注入使用详解

的对象都是一个新对象,如果我们要想在 Activity 作用域中实现对象共享,类似于 jetpack 中的 viewModel。如果是 Activity 实例的 context , 需要添加 @ActivityContext。在 android 项目中,但凡一个类要使用 hilt 依赖注入能力,就要在类头部加入。修饰的注入类,在 Activity 类多次申明注入,得到的实例只有一个。如果是 Activity 实例的 context , 需要添加。注解作用在类的构造函数中。申明需要使用的注入类。

2022-12-23 23:13:57 1430 2

原创 Android BottomSheetDialogFragment 使用详解,设置圆角、固定高度、默认全屏等

MD风格的底部弹窗,比自定义dialog或popupwindow使用更简单,功能也更强大。其实细分来说,是BottomSheet、BottomSheetDialog、BottomSheetDialogFragment。

2022-11-21 20:15:54 5444

原创 Android DataStore 使用详解

Jetpack DataStore 是一种数据存储解决方案,允许您使用协议缓冲区存储键值对或类型化对象。DataStore 使用 Kotlin 协程和 Flow 以异步、一致的事务方式存储数据。

2022-10-19 11:26:22 6242

原创 Android PorterDuffXfermode使用及工作原理详解

类继承自。在用Android中的Canvas进行绘图时,可以通过使用将所绘制的图形的像素与Canvas中对应位置的像素按照一定规则进行混合,形成新的像素值,从而更新Canvas中最终的像素颜色值,这样会创建很多有趣的效果。当使用时,需要将将其作为参数传给方法,这样在用该画笔paint进行绘图时,Android就会使用传入的,如果不想再使用Xfermode,那么可以执行。这个类中的Porter和Duff。

2022-10-12 18:22:50 1177 1

原创 Html第14集:绝对定位

可以看到 box1 开启绝对定位后,box1 脱离文档流,box1 提升层级。box2 向上顶,移动到 box1 的位置。

2022-10-09 16:59:24 154

原创 Html第13集:相对定位

作用:相对于自身原来的位置进行偏移,属性有:top,left,right,bottom。相对定位,首先我们来讲一下position: relative;

2022-10-09 16:06:34 147

原创 Html第12集:外边距重叠

一般是指垂直方向相邻的外边距会发生重叠现象,大多发生在兄弟元素和父子元素之间。外边距都是50,取最大值所以它们之间的间隔也是50。-100的绝对值较大,所以box2向上移动100。-50+50=0,所以他们之间的间距是0。box2是box1的兄弟元素。box2是box1的子元素。

2022-10-09 15:11:44 446

原创 Html第11集:div、span、div 盒子模型

div、span 是没有语义的。他们就是一个盒子(容器),用来装内容。1、在功能方面:div是一个块级元素,它包含的元素会自动换行。而span是行内元素,在它的前后不会换行。span没有结构上的意义,只是单纯的应用样式,其它元素不适合时,就可以使用span元素。span可以作为div的子元素,但div不能是span的子元素,如果出现span中出现div不符合ws3c的页面标准。

2022-10-09 10:58:43 1454

原创 Java 数组拷贝

方法其实就是返回一个数组,而这个数组就等于数组array的前 newLength 数。其实内部用了 System.arraycopy 方法。

2022-09-28 10:06:50 307

原创 Html第10集:选择器

选择器格式。

2022-08-27 16:00:32 193

原创 Html第9集:有序列表、无序列表、定义列表

dl>标签定义了定义列表(definition list)。定义列表中的项目描述列表中的项目。

2022-08-27 15:09:44 192

原创 Html第8集:AJAX Http请求、Get、Post、上传文件、表单

可以在服务器测解决,下面用 srpingboot 举例。如果请求某个接口,出现跨域出错问题。添加 header 使用。方法之后执行,顺序不能错。

2022-08-25 19:57:22 438

原创 Html第7集:debugger调试、Json

debugger 关键字用于停止执行 JavaScript,并调用调试函数。如果没有调试可用,debugger 语句将无法工作。开启 debugger ,代码在第三行前停止执行。这个关键字与在调试工具中设置断点的效果是一样的。

2022-08-25 15:54:20 864

原创 Html第6集:h1、button、input、img、p、br、a

alt : 在浏览器无法载入图像时,替换文本属性告诉读者她们失去的信息。此时,浏览器将显示这个替代性的文本而不是图像。为页面上的图像都加上替换文本属性是个好习惯,这样有助于更好的显示信息,并且对于那些使用纯文本浏览器的人来说是非常有用的。是空标签,意思是说,它只包含属性,并且没有闭合标签。如果把网络关闭,显示的效果就会显示。在 HTML 中,图像由。border 边框。

2022-08-25 10:52:12 275

原创 Html第5集:DOM 事件 、JavaScript 事件

HTML 事件是发生在 HTML 元素上的事情。当在 HTML 页面中使用 JavaScript 时, JavaScript 可以触发这些事件。

2022-08-24 17:58:48 215

原创 Html第4集:对象定义、typeof、instanceof、undefine

!DOCTYPE html > < html lang = "en" > < head > < meta charset = "UTF-8" > < title > 测试 < / title > < script > //定义对象 user = {

2022-08-24 14:14:09 496

原创 Html第3集:script、for循环、while、switch

元素既可包含脚本语句,也可以通过 “src” 属性指向外部脚本文件。标签用于定义客户端脚本,比如 JavaScript。通常用于图像操作、表单验证以及动态内容更改。

2022-08-24 13:59:19 461

原创 Html第2集:定义函数、函数返回值、打印日志

函数用function关键字声明,用包裹起来。

2022-08-24 12:03:21 920

原创 Html第1集:WebStorm 安装、vue3.0 安装、npm安装

从今天起,我就开始自学前端知识,更新一系列文章。

2022-08-17 10:03:57 981

原创 Android Glide 3.8 常见方法总结 【圆角、下载、回调】

发现公司的一个项目,glide用的还是3.8版本。总结一下,常见的方法,加速开发,拒绝加班。在几年前,总结过3.7版本的使用方法,

2022-07-30 14:08:09 1680

原创 Android 服务动态发现 SPA 之 Auto Service

动态服务发现机制,可以很好的解耦,不必直接依赖接口实现类。ServiceLoader.load每次都会创建一个新对象。生命周期用完即销毁缺点也很明显,要手动往写入文件。有没有一种自动写入的工具,可以解放双手?有的,下面我们就介绍auto-serviceauto-service的优势是,自动的往写入文件,解放了双手,666666我们看一眼这个目录,在build目录可以看到。......

2022-07-18 20:54:19 3814

原创 Android LayoutInflater布局文件解析过程分析

今天在项目中因为LayoutInflater参数使用错误,导致布局中的最外层的宽高都失效。排查好好久,都没有解决,一度怀疑是不是框架的问题。最后发现是LayoutInflater参数使用错误,恍然大悟。

2022-07-18 19:05:36 465

原创 Java 动态代理Proxy.newProxyInstance()

这种方式就是我们通常编写代码的方式。

2022-07-17 18:55:33 1180

原创 Android 全面剖析SharedPreferences

最近接手了一个项目,由于项目比较老,没有一个好的架构,发现的代码满天飞。比如;随即产生一个疑问,如果我多次调用,那么获取的SharedPreferences实例是一个,还是多个????????直接说答案相同的fileName,不管调用多少次,SharedPreferences都是同一个实例。也就是说SharedPreferences一旦被创建,就会在一个map中保存起来,map的key就是SharedPreferences的fileName。中。...

2022-07-17 18:38:30 293

原创 Android 探究RecyclerView onViewAttachedToWindow 触发时机

所以在特定场景下,可以通过这两个回调来解决少量Item移出屏幕,移进屏幕所需要的工作。答案recyclerView已经有adapter了,又绑定了一个新的adapter,就会执行。当第一次setAdapter的时候,屏幕内所有item会调用。适合做item曝光埋点,但是要注意,这个方法可能会执行多次。方法的话,会触发当前在屏幕中的所有Item的。,屏幕类所有的item会先执行。进来,移出的时候,当然也要。出去,所以对应的自然是。综上,Adapter的。......

2022-07-16 18:08:42 3737

原创 Android 探究View onDetachedFromWindow 触发时机

当 Activity 销毁的时候, 的 handleDestroyActivity 方法会执行,精简版如下:简单说一下,每个方法的含义: 遍历移除所有子View 是 的意思 。在这里其实是 实例 是 是 实例先看看 就是 把 的 置为 null 。 的 原来是, 的意思是:在来看 root 是 ViewRootImpl 实例 是 又因为 没有覆写 , 所以我们要看 的 方法。遍历子view , 调用其 dispatchDetachedFromWindow 方法,然

2022-07-09 00:52:40 3423

原创 Android 探究View onAttachedToWindow 触发时机

我们先从 的 说起。会调用当前 的 通过递归调用,会逐级调用 parent 的 ,最终会走到 的 因为 的 parent 是 ,所以最终会走调用 后续会执行 精简代码如下:调用 方法,从逻辑中我们发现 host 其实就是 。所以就相当于 因为 也是一个 ViewGroup ,并且没有覆写 方法。所以我们直接看 的 方法 的 方法 ,遍历 子view , 然后调用 。发现 的 会调用 。到此 , 已经分析完。...........................

2022-07-04 20:28:25 2881

原创 Android 使用ViewTreeLifecycleOwner获取Lifecycle

是中提供的的一个扩展方法,可以快速地获取一个最近的或者的。通过 将当前 设置到通过 将当前 设置到根通过 将当前 设置到通过 将当前 设置到随着 的普及,我们可能需要在 内部基于 进行 订阅等工作,当嵌套比较深时,使用扩展方法可以避免的层层传递,简化代码.............

2022-07-03 17:04:38 2159

原创 Android ktx使用

Android KTX 是包含在 Android Jetpack 及其他 Android 库中的一组 Kotlin 扩展程序。KTX 扩展程序可以为 Jetpack、Android 平台及其他 API 提供简洁的惯用 Kotlin 代码。简单来说 , ktx 就是:官方地址:https://developer.android.google.cn/kotlin/ktxmaven版本号:https://mvnrepository.com/artifact/androidx.core/core-ktx添加依赖:

2022-07-02 17:33:30 2060

原创 Android View onFinishInflate

的 是一个空方法。我们知道 的 方法,最终会调用 的 。 的 方法,会使用 解析布局,并且把布局添加到 中,可以理解为添加到 中在完成把 添加到 中,会调用

2022-06-20 19:15:57 571

Pepk 签名压缩工具

Android app 签名生成工,执行完命令,会生成 output.zip , 然后把 output.zip 上传即可,非常好用

2020-04-16

XShell+XFtp

灵活、轻便的SFTP/FTP客户端 通过Xftp 5在网络中安全传输文件,实现多窗口 编辑,进行文件同步。

2018-02-26

空空如也

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

TA关注的人

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