自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

寒风的博客

屌丝程序猿

  • 博客(210)
  • 资源 (11)
  • 收藏
  • 关注

转载 ALPHA_8、ARGB_4444、ARGB_8888和RGB_565的区别

在Android的Bitmap.Config中有四个枚举类型:ALPHA_8、ARGB_4444、ARGB_8888和RGB_565下面是这四种类型的详细解释:ALPHA_8:每个像素都需要1(8位)个字节的内存,只存储位图的透明度,没有颜色信息ARGB_4444:A(Alpha)占4位的精度,R(Red)占4位的精度,G(Green)占4位的精度,B(Blue)占4位的精度,加起来一...

2019-08-19 11:30:46 857

转载 应该是全网最全的JVM知识点总结

1:什么是JVMJVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。 JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java虚拟机上运行的目标代码(字节码...

2019-07-26 17:49:29 1134

转载 Android targetSdkVersion 原理

前几天 Google 官方发布文章解析 compileSdkVersion、minSdkVersion 以及 targetSdkVersion 的含义,以及合理设置各个值的意义,原文 Picking your compileSdkVersion, minSdkVersion, and targetSdkVersion(后面简称 “原文”),还有翻译版。其中,compileSdkVersion ...

2019-07-11 20:22:25 618

转载 malloc、calloc、realloc的区别

(1)C语言跟内存分配方式<1>从静态存储区域分配. 内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在.例如全局变量、static变量.<2>在栈上创建 在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放.栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限....

2019-04-15 10:20:04 901

原创 C存储类

一、各关键字的含义auto是局部变量的默认存储类, 限定变量只能在函数内部使用;register代表了寄存器变量,不在内存(RAM)中使用;static是全局变量的默认存储类,表示变量在程序生命周期内可见;extern表示全局变量,即对程序内所有文件可见,类似于Java中的public关键字;二、C 语言中全局变量、局部变量、静态全局变量、静态局部变量的区别从作用域...

2019-04-13 20:02:12 1888

原创 C语言常量定义

在C中,有两种简单的定义常量的方式:1.使用#define预处理器2.使用const关键字const定义的是变量不是常量,只是这个变量的值不允许改变是常变量!带有类型。编译运行的时候起作用存在类型检查。define定义的是不带类型的常数,只进行简单的字符替换。在预编译的时候起作用,不存在类型检查。1、两者的区别(1) 编译器处理方式不同#define 宏是在预...

2019-04-13 18:28:03 34839 1

原创 初识C

C 是一种面向过程的、被广泛应用的计算机语言,当前最新的C语言标准为C11,在此之前的是C99.是为UNIX操作系统而设计的。/* #include 预处理(预编译)命令,用来引入头文件;在编译器遇到printf()函数时,如果没有扎到studio.h头文件,会发生编译错误;而studio.h是一个头文件(标准输入输出头文件)*/#include <stdio.h> /*...

2019-04-13 14:21:21 185

原创 Android色彩矩阵处理图像

Android中对于图片的处理,最常使用到的数据结构是位图——Bitmap,它包含了一张图片所有的数据。这个数据都是由点阵和颜色值组成的,所谓点阵就是一个包含像素的矩阵,每一个元素对应着图片的一个像素。而颜色值——ARGB,分别对应透明度、红、绿、蓝这四个通道分量,它们共同决定了每个像素点显示的颜色,下图就显示了自然界中的色光三原色。色彩矩阵在色彩处理中,通常使用一下三个角度来描述一个图像...

2019-02-28 16:53:33 311

原创 view.setAlpha(float alpha)与view.getBackground().setAlpha(int alpha)的区别

Android中对一个View控件透明度的设置,提供了两个方法:view.setAlpha(float alpha)与view.getBackground().setAlpha(int alpha)这两者的区别主要是:传递参数:  view.setAlpha(float alpha)参数范围是0~1;而view.getBackground().setAlpha(int alpha)传入的...

2019-02-20 11:38:11 2948

转载 layout_constraintDimensionRatio中 H与W的区别

在 ConstraintLayout  约束布局中,  layout_constraintDimensionRatio 表示 期望的 宽高比 ,这方面 网上资料很多,但还有 一些 隐藏的用法 网上查不到。layout_constraintDimensionRatio 不仅可以用来 表示  宽高比, 也可以用来 表示 高宽比正常写法下  layout_constraintDimensio...

2019-02-11 17:04:36 1450 1

原创 10进制转换为16进制

十进制小数转换为16进制小数可采用乘16取整法,即:十进制小数转R进制小数,方法为乘R取整,每次乘以相应之后基数后取结果的整数部分即可。需要注意的是并非所有的十进制小数都能完全转化为R进制小数,这时就需要取近似值。例如:十进制小数0.15转换为16进制小数,其计算过程为:0.15*16=2.4取整为20.4*16=6.4取整为60.4*16=6.4取整为6....最后得...

2018-12-19 10:26:22 34104

原创 高斯模糊

1.Android高效计算——RenderScript(一)2.Android实现图片的高斯模糊(两种方式)3.Android 弹窗毛玻璃背景实践4.Android使用glide实现毛玻璃效果5.Android图像处理 - 高斯模糊的原理及实现6.Android 图片高斯模糊解决方案...

2018-12-17 19:45:13 420

原创 NestedScrollView嵌套WebView加载成功内容显示空白问题解决

因为需求问题需要采用CoordinatorLayout+AppBarLayout+ViewPager+NestedScrollView+WebView布局方式,虽然Google官方不建议NestedScrollView+WebView的嵌套使用,但是为了需求实现,实在是没有找到其他的可替代方案,只能是采用此方法了。因为采用此方案,相关的问题也随之而来,其中最大的问题就是,WebView内容成功...

2018-12-10 16:04:25 6871 3

原创 给TextView控件内容每一个文字设置点击事件

String dst = "Liver and kidney are particularly rich in vitamin A."; SpannableStringBuilder ssInfo = new SpannableStringBuilder(dst); String[] split = dst.split(" "); for (Str...

2018-11-09 13:03:14 576

原创 计算机输入和输出以及冯诺依曼结构的原理与实现对应

第五节 计算机输入和输出外部记录介质 R---穿孔纸带、硬盘等输入输出设备通过系统总线与CPU链接起来现代个人计算机的输入输出控制芯片主要是集中在主板上的“南桥芯片”中。南桥芯片属于外部记录介质与计算机的硬盘相连接。高性能的需求还是需要单独的芯片或板卡进行控制,例如声卡、显卡等。第六节 冯诺依曼结构的原理与实现的对应南北桥架构的演变--产生系统芯片(将计算机或其他电子系统集成为单一...

2018-10-11 09:56:42 1932

原创 第四节 计算机执行指令的过程

1.取指(Fetch)1)控制器将指令的地址送往存储器2)存储器按给定的地址读出指令内容,送回控制器具体过程描述:一共是7个步骤A:控制器会将PC中的指令通过内部总线传输到MAR中;B:然后MAR会将控制指令传输到地址总线上,与此同时控制电路会在控制总线上发出相应的控制信号,代表此次访问存储器的是操作是读取数据;C:这样存储器的MAR寄存器就会收到地址总线上传输过来的地址并把它保存下来...

2018-10-09 19:34:58 5697

原创 第三节 计算机结构的简化模型

模型机由存储器与CPU组成,两者之间使用系统总线相连。系统总线根据相关功能又分为:控制总线:控制逻辑、地址译码器地址总线:MAR数据总线:MDR注意:该模型机中的“存储器”即指主存(内存)存储器:1.存储单元的位宽由设计计算机时对存储器的编址方式确定。如果存储器按照字节编址,则每个存储单元存放8位二进制数2.存储单元的地址是惟一的,不同存储单元地址互不相同CPU要想访问某...

2018-10-08 14:10:52 1087 1

转载 axure8.0快速入门新手教程:滑动解锁

当前,很多表单的设计都会使用手机获取验证,一方面商家可以精准获取用户的手机号码,以便之后的精准推广,另一方面也防止用户批量注册小号扰乱平台秩序。今天就主要说说如何使用axure原型来进行获取验证码表单设计。获取验证码表单主要包括一个输入框和一个“获取验证码”按钮,其中“获取验证码”按钮才是设计的重点。它总共有两种状态,一种是静态文本状态,即按钮中显示“获取验证码”,另一种是动态倒计时状态,即按...

2018-10-07 08:39:27 1615

转载 axure原型设计之获取验证码

当前,很多表单的设计都会使用手机获取验证,一方面商家可以精准获取用户的手机号码,以便之后的精准推广,另一方面也防止用户批量注册小号扰乱平台秩序。今天就主要说说如何使用axure原型来进行获取验证码表单设计。获取验证码表单主要包括一个输入框和一个“获取验证码”按钮,其中“获取验证码”按钮才是设计的重点。它总共有两种状态,一种是静态文本状态,即按钮中显示“获取验证码”,另一种是动态倒计时状态,即按...

2018-10-07 08:38:53 1406

原创 Eclipse项目导入Android studio 报错方法解决

错误一、 Android Studio 运行出现 Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.错误日志:Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'....

2018-10-07 08:37:05 433

原创 JDk8 学习随笔

添加的新特性: ##jdk 8lambda 匿名函数一、只保留参数列表-&gt;引用方法体作用:去掉匿名内部类##方法引用::本质是lambda表达式的简写。##集合内部循环##Stream API##集合泛型的自动推断一、lambda匿名函数  package com.example;import java.util.ArrayList;impo...

2018-10-07 08:36:14 310

原创 第一讲:计算机基本结构

这一讲从计算机的起源开始,讲述冯.诺依曼等人构建现代计算机的历史,并对照当前新型计算机的具体实现,讲解计算机内部结构的基本原理。为了便于计算机内部结构的抽象过程,通过相关类比分析计算机指令的执行过程从而建立计算机结构的整体概念。第一节 电子计算机的兴起“现代电子计算机之父” ---约翰.冯.诺依曼ENIAC:世界上第一台通用电子计算机  莫克利与埃克特设计 宾夕法尼亚大学ENIAC设计借鉴...

2018-10-06 22:56:18 1671

原创 计算机组成

我一直坚定地认可一个优秀的计算机从业人员OR编程人员必定会有坚实的计算机理论知识作为支撑,只有将计算机相关原理性知识做到熟悉乃至精通掌握,才可以更加长远的在编程领域发展。鉴于此,本文将会跟随北京大学陆俊林博士一起学习计算机组成相关知识,以便能够帮助像我一样理论知识薄弱但是渴望能够在计算机领域一展才华的“猿类”。课程主要对剖析计算机内部机构与计算机工作原理两部分进行展开介绍以及对相关原理性知识深入讲...

2018-09-28 12:39:46 223

原创 Android字符串资源使用格式化占位符的正确使用

在Android的String.xml中若是含有两个或者两个以上的资源格式化占位符,例如以下:&lt;string name="user_my_answer_grade_course"&gt;%s %s&lt;/string&gt;在编译的过程中编译器会出现以下错误提示:出现这个错误的原因在于aapt在编译时对字符串资源中的格式化占位符进行比较严格的校验,解决方案有两种:使用...

2018-09-27 11:25:22 1634

原创 APK安装卸载过程简介

APK打包过程:1.javac工具将*.java文件进行转换,转换后通常得到一个*.class文件;2.dx工具对*.class文件进行转换,转换后通常得到一个*.dex文件;3.通过aapt工具打包所有的资源文件打包得到*.ap_文件;4.通过apkbuilder工具把前两步得到的*.dex、*.ap_文件打包生成apk。注:dx、aapt工具均在D:\xxx\android-sdk-...

2018-09-20 17:29:46 1720

原创 Android 各版本对应API以及相关特性

Android K 4.0~4.4w 14~20Android L 5.0 21Android L 5.1 22Android M 6.0 23Android N 7.0 24Android N 7.1 25Android O 8.0 26Android P 9.0 27https://blog.csdn.net/aqi00/article/details/50730793 A...

2018-09-20 17:23:30 1900

原创 Android 如何在ListView中嵌套ListView

因为项目MRD的需要,要在一个ListView中放入另一个ListView,也即在一个ListView的每个ListItem中放入另外一个ListView。但刚开始的时候,会发现放入的小ListView会显示不完全甚至是空白一片完全不显示,它的高度始终有问题。上网查了下,发现别人也有遇到这样的问题,而大多数人都不推荐这样的设计,因为默认情况下Android是禁止在ScrollView中放入另外的S...

2018-09-15 11:32:07 4302

原创 ViewStub的使用简介

前言:在设计模式的单利模式中,懒汉式和饿汉式是其中两种。一种是在类被加载的时候就完成单例对象的初始化,一种是在需要使用该单例的时候才初始化。在android的视图设计中,同样需要使用的这样的设计模式。这样的视图加载起来需要耗费很多的时间。在这几百个视图里面,可能有部分视图是在点击某一按钮也就是并不是马上加载,而是延迟到要使用的时候才加载这部分视图。也就是类似于单例模式中的懒加载。...

2018-09-11 18:45:12 1407

转载 cookie和会话状态的工作原理

一:存在两种类型的cookie:1&gt;会话cookie (session cookie)       不设置过期时间,则表示这个cookie生命周期为浏览器会话期间,只要关闭浏览器窗口,   cookie就消失了。       生命期为浏览器会话期。       一般不保存在硬盘上而是保存在内存里。2&gt;持久性cookie (persistent cookies) ...

2018-08-31 19:58:54 307

原创 Android系统应用框架篇以及JVM官方文档优秀参考链接

Android系统应用框架篇:https://github.com/hanfengzqh/android-open-source-project-analysisJVM官方文档:https://docs.oracle.com/javase/specs/index.html

2018-07-20 19:08:35 201

原创 深入理解Java类型信息(Class对象)与反射机制

1.RTTI运行时类型:在运行时识别一个对象的类型和类的信息;反射机制,允许我们在运行时发现和使用类型的信息.在Java中用来表示运行时类型信息的对应类就是Class类.编译后的字节码文件保存的就是Class对象,Class对象保存了对应类的所有相关信息.在内存中每个类有且只有一个相对应的Class对象.以上总结为:1)Class类也是类的一种,与class关键字是不一样的.2)手动编...

2018-07-07 19:44:39 262

原创 设计模式之代理模式

代理模式:代理模式:有代理类与委托类组成,两者有相同的接口.其中代理类主要负责为委托类预处理消息、过滤消息并把消息转发给委托类,以及事后处理消息等。使用的目的:采用代理模式可以有效的将具体的实现与调用方进行解耦,通过面向接口进行编码完全将具体的实现隐藏在内部静态代理的缺点:1)代理类和委托类实现了相同的接口,代理类通过委托类实现了相同的方法.这样就出现了大量的代码重复.造成代码冗余臃肿.2)代理对...

2018-07-07 18:24:54 153

原创 Java类加载以及Java内存模型

JVM内存区域,开线程影响哪块内存?java栈、方法区、本地方法栈JVM内存模型,内存区域虚拟机内存区域分为:运行时数据区+(执行引擎+本地库接口+本地方法库)运行时数据区:方法区、Java栈、Java堆、本地方法栈、程序计数器Java的内存模型:Java内存模型规定了所有的变量都存储在主内存中.每条线程中还有自己的工作内存,线程的工作内存中保存了被该线程所使用到的变量(这些变量是从主内存中拷贝而...

2018-07-06 15:12:23 684

转载 性能测试中负载测试与压力测试的区别

对于性能测试,负载测试,压力测试的区别,之前总自认为是清楚的,后来被人问住了,才发现还差的远。这儿网上摘了一些内容,加上自己的理解,算是弄清楚了吧。特此记下,避免忘了。如有错误之处,还望指正。性能测试(或称多用户并发性能测试)、负载测试、强度测试、容量测试是性能测试领域里的几个方面,但是概念很容易混淆。 下面将几个概念进行介绍。性能测试(Performance Test):通常收集所有和测试有关的...

2018-07-05 17:01:42 9266

转载 linux系统中如何查看日志 (常用命令)

cat tail -f 日 志 文 件 说    明 /var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一 /var/log/secure 与安全相关的日志信息 /var/log/maillog 与邮件相关的日志信息 /var/log/cron 与定时任务相关的日志信息 /var/log/spooler 与UUCP和news设备相关的日志信息...

2018-07-05 16:52:40 903

转载 基础笔记(三):网络协议之Tcp、Http

目录一、网络协议二、TCP(Transmission Control Protocol,传输控制协议)TCP头格式TCP协议中的三次握手和四次挥手TCP报文抓取工具三、HTTP(HyperText Transfer Protocol,超文本传输协议)请求报文结构请求报文样例请求报文参数详解响应报文结构响应报文样例响应报文参数详解HTTP报文抓取工具Session和Cookie四、相关资料 一、网络...

2018-07-04 17:51:52 189

转载 Http协议与TCP协议简单理解

TCP协议对应于传输层,而HTTP协议对应于应用层,从本质上来说,二者没有可比性。Http协议是建立在TCP协议基础之上的,当浏览器需要从服务器获取网页数据的时候,会发出一次Http请求。Http会通过TCP建立起一个到服务器的连接通道,当本次请求需要的数据完毕后,Http会立即将TCP连接断开,这个过程是很短的。所以Http连接是一种短连接,是一种无状态的连接。所谓的无状态,是指浏览器每次向服务...

2018-07-04 17:50:33 199

转载 Android中Activity启动过程探究

首先追溯到Activity的启动,随便启动一个自己写的demo项目,使用DDMS进行debug标记,然后在Debug中把主线程暂停,可以看到调用栈。如下图所示:于是我们先看android.app.ActivityThread的main()方法。android.app.ActivityThread.main()main()方法中对一个Looper对象进行初始化,形成一个消息循环,那么任何主线程的操作...

2018-06-23 16:45:54 184

转载 阴影效果 ShadowLayout 布局实现(让控件实现立体效果)

效果 第二张和第三张图是加入了阴影效果的,是不是觉得立体感很强,感觉图片是浮在屏幕上。这个效果也可以用Google 提供扩展包下的CardView控件来实现,而这篇文章是带大家自己来实现这样一个效果。原理我们仔细观察上图,可以发现,有带阴影效果的图和没带阴影效果的图,其实就一个地方不同,就是在图片的底下绘制了阴影效果,而图片的大小都没变。所以我们要做的就是给子 View 绘制阴影。那么阴影部分怎么...

2018-06-22 10:23:36 1438

转载 setCompoundDrawables与setCompoundDrawablesWithIntrinsicBounds的区别

更换radiobutton中的图片在xml中很好设置,但对于初学者如何在代码中设置还是不容易找的。没法子,通过看原版api找到两个方法,setCompoundDrawables和setCompoundDrawablesWithIntrinsicBounds。下面交给大家方法。第一个方法:setCompoundDrawablesWithIntrinsicBounds(Drawable left, D...

2018-06-15 16:35:38 1853

Logger开源log日志jar包

Orhan Obut 大神分享的一开源项目Logger输出日志,非常好用,该开源库能够把: 线程的信息 类的信息 方法的信息 格式打印json、xml等 点击链接跳转到源码打印处 此外还可根据自己需求进行定制化,并且还可日志输出保存为文件。

2017-09-16

深入理解Java虚拟机——JVM高级特性与最佳实践(第2版).

深入理解Java虚拟机——JVM高级特性与最佳实践(第2版).pdf,完整,带书签, 完整版

2017-09-13

Android全局异常捕获及上传服务器

涵盖全局异常捕获以及服务器加密上传

2017-08-22

中国银联全渠道支付平台--银联二维码支付之主扫、被扫、查询接口

中国银联全渠道支付平台--银联二维码支付之主扫、被扫、查询接口

2017-07-13

仿百度手机助手推荐页面

仿百度手机助手android端推荐界面,实现上滑actionbar颜色变化及背景颜色变化,继承了slibingTab与Viewpager

2016-06-12

Android实时判断网络连接(wifi/2G/3G/4G)

注册广播实时监测当前手机的连接网络(wifi/2G/3G/4G)以及可以检测当前数据连接所属的网络运行商(移动/电信/联通)

2016-05-18

屏幕自动适配demo

提供了很好的屏幕适配资源,可以运行,无需再次进行屏幕适配。

2016-01-26

重力传感器

支持android重力感应,可以运行的demo,欢迎大家下载

2016-01-26

银联支付demo

很好的银联支付demo,可以运行,大家可以参考一下

2016-01-26

支付宝接口调用实例

全面的支付宝支付接口调用代码,可以运行。

2016-01-26

微信支付demo

微信支付demo,大家可以参考一下,很全的微信支付demo

2016-01-26

空空如也

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

TA关注的人

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