Android二维码开发学习教程
二维码其实有很多种,但是我们常见的微信使用的是一种叫做QRCode的二维码,像下面这样的,可以放心的扫,这只是我的博客主页链接啦: 关于QR码编码的二维码,我们要知道几个特点: 1. 扫描时可以从各个角度去扫,也就是旋转多少度都没关系,不信吗?下次去肯德基买单试试咯。 2. 二维码...
2024-01-10redis源码学习01:字符串sds
前言本文是redis源码关于字符串处理的学习笔记,欢迎指正。redis版本是5.0.5,redis的功能、用途及性能我就不做赘述了。正文进入正题,redis提供了自己的字符串存储及相关操作,源码文件在sds.h和sds.c里。在学习代码的过程中发现redis使用了一个比较巧妙的设计,redis里存储字符串不是简单的使用C语...
2024-01-10android绘制几何图形的实例代码
本文实例为大家分享了android绘制几何图形展示的具体代码,供大家参考,具体内容如下效果图:代码(仅绘制类,不可直接运行):public class MyView extends View { public MyView(Context context, AttributeSet set) { super(context, set); } @Override // 重写该方法,进行绘图 protected void onDraw(Canvas canvas) ...
2024-01-10简单实现Android学生管理系统(附源码)
本文实例讲述了Android实现学生管理系统,分享给大家供大家参考。具体如下:(1)管理系统实现的功能主要是:学生、教师的注册登录,和选课,以及修改学生的成绩等基本简单的功能,最主要的是实现一些Dialog的使用。 界面如下:(2)主要代码如下:(个人留作笔记,如需要完整代码,在最...
2024-01-10android实现密码框右侧显示小眼睛
本文实例为大家分享了android实现密码框右侧显示小眼睛的具体代码,供大家参考,具体内容如下实现效果<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background...
2024-01-10纯android代码实现九宫格手势密码
这几天项目中要加九宫格手势密码,在网上搜了大量资料,大部分都是以图片实现为主,集合部分代码,android实现纯代码九宫格。好了,不废话了,先上图。效果大概就是这样,逻辑自己实现,我只上这个自定义控件的代码。1. point.Java 点的位置/** * 点位置 */ public class Point { public sta...
2024-01-10android异步消息机制 源码层面彻底解析(1)
Handler、Message、Loopler、MessageQueen首先看一下我们平常使用Handler的一个最常见用法。Handler handler =new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); //这里进行一些UI操作等处理 } new Thread(new Runnable() { @Override public void run...
2024-01-10android音频编辑之音频裁剪的示例代码
前言本篇开始讲解音频编辑的具体操作,从相对简单的音频裁剪开始。要进行音频裁剪,我的方案是开启一个Service服务用于音频裁剪的耗时操作,主界面发送裁剪命令,同时注册EventBus接受裁剪的消息(当然也可以使用广播接受的方式)。因此,在本篇主要会讲解以下内容:音频编辑项目的整体结构...
2024-01-10redis源码学习02:跳跃表插入结点
本文是本人在学习redis源码时的笔记,本文主要是对跳跃表插入结点代码的中文注释,如有错误欢迎指正。有关跳跃表的原理可以上网搜材料,有很多。首先看下redis源码里有关跳跃表的相关结构体:typedef struct zskiplistNode { // 跳跃表节点 sds ele; // zset元素 double score; // zset分值 struct zsk...
2024-01-10柔性数组(Redis源码学习)
柔性数组(Redis源码学习)1. 问题背景在阅读Redis源码中的字符串有如下结构,在sizeof(struct sdshdr)得到结果为8,在后续内存申请和计算中也用到。其实在工作中有遇到过这种 struct结构 + 应用数据的情况,但没有意识到自己使用的是柔性数组,在学习阅读Redis代码中,遇到该方法,就特总结记录之。/* * 类...
2024-01-10Koa源码解析,一起学习koa
前言本文是我在阅读 Koa 源码后,并实现迷你版 Koa 的过程。如果你使用过 Koa 但不知道内部的原理,我想这篇文章应该能够帮助到你,实现一个迷你版的 Koa 不会很难。本文会循序渐进的解析内部原理,包括:基础版本的 koacontext 的实现中间件原理及实现文件结构application.js: 入口文件,里面包...
2024-01-10android从资源文件中读取文件流并显示的方法
本文实例讲述了android从资源文件中读取文件流并显示的方法。分享给大家供大家参考。具体如下:在android中,假如有的文本文件,比如TXT放在raw下,要直接读取出来,放到屏幕中显示,可以这样:private void doRaw(){ InputStream is = this.getResources().openRawResource(R.raw.ziliao); try{ doRead(is); }catch(IOException e){ e.pr...
2024-01-10【Java】Spring源码学习有什么书值得一看?
问题描述其实已经使用Spring有一端时间了,但总感觉自己浮于表面,还是有很多报错信息让我无法准确的找到问题产生的原因,以及解决的方案,中间也尝试自己去阅读官网英文的文档,也看过一些Spring的源码,但是缺少一点整体性,所以想寻找一本好书。之前看了一下豆瓣上《Spring源码深度解析》...
2024-01-10Android10.0实现本地音乐播放(附源码下载)
目录1.概述2.效果截图3.读取本地音乐以及保存歌曲4.使用Service实现后台播放5.使用Notification通知栏通知6.全屏显示7.设置歌曲选中后的样式1.概述本篇文章仅是Android小白在写一个小程序,内容仅供参考,有很多不足之处希望各位大神指出,文章末尾有整个项目的下载,不需要币,只求帮你们解决到问题...
2024-01-10Redis动态字符串SDS源码学习
参考redis数据结构:sds动态字符串redis源码解读(一):基础数据结构之SDS1. 用Simple Dynamic String 取代 C 默认的 char* 类型Redis没有直接使用c语言的字符串,而是自己定义了一个字符串数据结构,SDS作为默认的字符串,我们设置的所有键值基本都是SDSC语言字符串特点:每次计算字符串长度strlen(s)的时间复...
2024-01-10PostgreSQL源码学习(1)Page页
The Internals of PostgreSQL中对于存储的描述http://www.interdb.jp/pg/pgsql01.html#_1.2.每个表或索引都作为一个page数组存储于物理数据文件中(page大小默认为8k,编译时可以指定),单个的表数据文件中包含多个page页(默认单个表文件最大1G,超过1G后会新建同名+“.1”后缀的数据文件,依次累加,同样在编译时可...
2024-01-10ClassLoader类加载源码解析
Java类加载器1、BootClassLoader: 用于加载Android Framework层class文件。2、PathClassLoader: 用于Android应用程序类加载器。可以加载指定的dex,jar、zip、zpk中的classes.dex3、DexClassLoader:加载指定的dex,以及jar、zip、apk中的classes.dex源码解析1.ClassLoader中提供loadClass用于加载指定类//ClassLoader.javapublic Class<?> loadC...
2024-01-10spring源码学习之路---深入AOP(终)
本文内容纲要:spring源码学习之路---深入AOP(终)作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可。上一章和各位一起看了一下springAOP的工作流程,当我们给出AOP相关的配置以后,...
2024-01-10Android从源码的角度彻底理解事件分发机制的解析(上)
其实我一直准备写一篇关于Android事件分发机制的文章,从我的第一篇博客开始,就零零散散在好多地方使用到了Android事件分发的知识。也有好多朋友问过我各种问题,比如:onTouch和onTouchEvent有什么区别,又该如何使用?为什么给ListView引入了一个滑动菜单的功能,ListView就不能滚动了?为什么图片轮...
2024-01-10PostgreSQL源码学习执行器#9
本节介绍ExecutePlan函数相关数据结构typedef enum ScanDirection{ BackwardScanDirection = -1, NoMovementScanDirection = 0, ForwardScanDirection = 1} ScanDirection;ExecutePlan函数static voidExecutePlan(EState *estate, PlanState *planstate, bool use_parallel_mode, CmdT...
2024-01-10从 rollup 初版源码学习打包原理
前言为了学习 rollup 打包原理,我克隆了最新版(v2.26.5)的源码。然后发现打包器和我想像的不太一样,代码实在太多了,光看 d.ts 文件就看得头疼。为了看看源码到底有多少行,我写了个脚本,结果发现有 19650行,崩溃...这就能打消我学习 rollup 的决心吗?不可能,退而求其次,我下载了 rollup 初版...
2024-01-10Android从源码的角度彻底理解事件分发机制的解析(下)
记得在前面的文章中,我带大家一起从源码的角度分析了Android中View的事件分发机制,相信阅读过的朋友对View的事件分发已经有比较深刻的理解了。还未阅读过的朋友,请先参考Android从源码的角度彻底理解事件分发机制的解析。 那么今天我们将继续上次未完成的话题,从源码的角度分析ViewGroup的事...
2024-01-10CoroutineContext源码分析
context,即协程上下文public interface Continuation<in T> { /** * The context of the coroutine that corresponds to this continuation. */ public val context: CoroutineContext /** * Resumes the execution of the corresponding coroutine passing a ...
2024-01-10PostgreSQL源码学习调度器#13
本节介绍PortalRunMulti函数。PortalRunMulti函数static voidPortalRunMulti(Portal portal, bool isTopLevel, bool setHoldSnapshot, DestReceiver *dest, DestReceiver *altdest, char *completionTag);//src/backend/tcop/pquery.c/* 若目标是DestRemoteExecute,则设置为DestNon...
2024-01-10PostgreSQL源码学习删除数据#0
以一条delete from test where a = 123;的SQL语句为例,跟踪删除数据的代码逻辑。(PG版本为12.2)删除数据主要的函数是heap_delete。查看调用栈:#0 heap_delete (relation=0x7f67ac24ca28, tid=0x7fff92b2c8ba, cid=0, crosscheck=0x0, wait=true, tmfd=0x7fff92b2c7d0, changingPart=false) at heapam.c:2447#1...
2024-01-10