自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Shaw的专栏

Stay hungry. Stay foolish.

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

转载 WebView:onReceiveError的应用与变迁

onReceiveError是WebViewClient提供的方法,用于网页产生错误时进行回调处理。1. 旧版的onReceiveError在API23之前,该方法的签名是:public void onReceivedError(WebView view, int errorCode,String description, String failingUrl);1文档是:

2018-01-22 19:54:42 1070

原创 两个surfaceview重叠显示

最近在做人脸识别的项目,需要在做一个动画效果来追踪人脸的位置,遇到了这个问题。1个surfaceview获取相机预览数据作为背景,1个surfaceview在前一surfaceview之上作为绘图层,用于绘制追踪的效果。布局使用framelayout,大小一致。由于surfaceview本身为透明的,本人认为直接层叠2个surfaceview就行了。

2017-09-22 20:11:47 5345 1

原创 常见加密算法&HTTP数据传递的加密

数字签名,对称加密,非对称加密

2017-03-16 14:19:14 3672

原创 第八章 模版方法模式

在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模版方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。

2017-01-18 23:24:44 396

原创 第七章 适配器模式&&外观模式

定义适配器模式: 将一个类的接口,转换成客户期望的另一个接口。适配器可以让原本接口不兼容的类可以合作无间。

2017-01-09 22:13:52 340

原创 第六章 命令模式

命令模式: 将“请求”封装成对象,以便使用不同的请求、队列或者日志参数化其他对象。命令模式也支持可撤销的操作。

2017-01-08 22:46:26 308

原创 第五章 单件模式

概念及常见用途定义:确保一个类只有一个实例,并提供一个全局访问点。 常见用途:用来管理共享的资源,例如数据连接,线程池,缓存,注册表,日志等。

2017-01-02 20:48:14 457

原创 android多渠道打包&&几个打包小技巧

多渠道打包的意义、原理;使用友盟实现的步骤;其他几个打包技巧。

2017-01-01 17:25:24 3609

原创 第四章 工厂模式

工厂模式—简单工厂工厂模式—工厂方法模式工厂方法模式:定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。工厂模式—抽象工厂模式抽象工厂模式: 提供一个接口,用于创建相关或者依赖对象的家族,而不需要明确指定具体类。ps:这一章有点长,看的我有点蒙蒙哒,这次先抄抄类图,下次再补充。

2016-12-27 23:11:20 475

原创 第三章 装饰者模式

装饰者模式:动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的代替方案。Decorator利用继承达到“类型匹配”,为不是获得“行为”。如果依赖继承,那么类的行为只能在编译时静态决定(行为如果不是来自超类,就是子类覆盖后的版本)。利用组合,可以把装饰者混合着用,而且是“运行时”。 Java I/O 中的装饰者模式

2016-12-24 23:29:16 340

原创 第二章 观察者模式

观察者模式:在对象之间定义一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象都会接收到通知,并自动更新。 数据方向:可以由Subject推向(push)Observer,也可以由Observer从Subject拉(pull)。推(push):subject.notifyObservers(Object data)。拉(pull):subject.notifyObservers

2016-12-22 23:10:24 386

原创 第一章 设计模式入门(策略模式)

策略模式:定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。 继承的不足:某些行为子啊子类里不断的改变,并且让所有的子类都有这些行为是不恰当的。接口的不足:无法达到代码的复用。设计原则:找出应用中可能需要变化之处(fly()&quack()),把它们独立出来,不要和那些不需要变化的代码混在一起。 “指定”行为到子类的实例;让子类的行

2016-12-21 23:25:56 388

转载 AsyncTask并行执行

使用AsyncTask时发现一个奇怪的现象,即创建多个任务的时候,他是一个一个按顺序执行的,查资料之后发现:在1.5中初始引入的时候, AsyncTask 执行( AsyncTask.execute() )起来是顺序的,当同时执行多个 AsyncTask的时候,他们会按照顺序一个一个执行。前面一个执行完才会执行后面一个。这样当同时执行多个比较耗时的任务的时候 可能不是您期望的结果,具体情况

2016-03-09 09:07:02 481

转载 关于AsyncTask中的cancel方法

在这里总结一下:  文档地址  Cancelling a task  A task can be cancelled at any time by invoking cancel(boolean). Invoking this method will cause subsequent calls to isCancelled() to return true. After

2016-03-08 23:39:17 841

转载 convertView&setTag方法的一点理解

前言首先我们要知道setTag方法是干什么的,SDK解释为TagsUnlike IDs, tags are not used to identify views. Tags are essentially an extra piece of information that can be associated with a view. They are most often

2016-03-06 11:19:19 7587

转载 onTextChanged参数解释及实现EditText字数监听

由于最近做项目要检测EditText中输入的字数长度,从而接触到了Android中EditText的监听接口,TextWatcher。它有三个成员方法,第一个after很简单,这个方法就是在EditText内容已经改变之后调用,重点看下面两个方法:beforeTextChanged(CharSequence s, int start, int count, int after)这个方法是在Te

2016-03-03 17:27:21 15602 2

转载 JDBC中Statement接口提供的execute、executeQuery和executeUpdate之间的区别

Statement 接口提供了三种执行 SQL 语句的方法:executeQuery、executeUpdate 和 execute。使用哪一个方法由 SQL 语句所产生的内容决定。         方法executeQuery          用于产生单个结果集的语句,例如 SELECT 语句。 被使用最多的执行 SQL 语句的方法是 executeQuery。这个方法

2016-02-27 10:57:51 511

转载 交换两个变量的值,不使用第三个变量的四种方法

通常我们的做法是(尤其是在学习阶段):定义一个新的变量,借助它完成交换。代码如下:int a,b;a=10; b=15;int t;t=a; a=b; b=t;这种算法易于理解,特别适合帮助初学者了解计算机程序的特点,是赋值语句的经典应用。在实际软件开发当中,此算法简单明了,不会产生歧义,便于程序员之间的交流,一般情况下碰到交换变量值的问题,都应采用此算法(以下称为标准算法)。

2016-02-26 08:31:14 5060

转载 java 获取文件 总行数 比较

import java.io.BufferedInputStream;import java.io.FileInputStream;import java.io.FileReader;import java.io.InputStream;import java.io.LineNumberReader;import java.util.Calendar;public class Tes

2016-02-04 14:07:35 1722

原创 Android开发修炼——我的java学习 Day05

引子(控制台接值)1. 什么是方法 Method2. 掌握方法的声明 掌握方法的调用4. 掌握什么是方法重载5. 了解递归算法6. 方法的好处:7. 跳转语句

2016-01-10 17:05:49 419

原创 Android开发修炼——我的java学习 Day04

1.什么是循环语句2.掌握 for 循环3.掌握 while 循环4.掌握 do-while 循环5.掌握 break 语句 continue 语句6.while do-while for 区别7.break continue区别8.二重循环

2016-01-10 16:52:52 470

原创 Android开发修炼——我的java学习 Day03

1.进制2.位运算符3.if选择结构4.switch分支结构

2016-01-09 22:42:46 431

原创 Android开发修炼——我的java学习 Day02

1.标识符、关键字2.**数据类型3.变量4.运算符5.基本数据类型的类型转换6.键盘录入7.+连接符

2016-01-09 21:57:05 606

原创 Android开发修炼——我的java学习 Day01

1.什么是java?2.java的发展史:3.java中名词:4.java语言的特点5.java 开发环境配置6.快捷键7.DOS命令8.开发第一个JAVA程序10.转义符 11.注释

2016-01-09 21:39:58 517

转载 边界对齐问题

结构体边界对齐  许多实际的计算机系统对基本类型数据在内存中存放的位置有限制,它们会要求这些数据的首地址的值是某个数k(通常它为4或8)的倍数,这就是所谓的内存对齐,而这个k则被称为该数据类型的对齐模数(alignment modulus)。当一种类型S的对齐模数与另一种类型T的对齐模数的比值是大于1的整数,我们就称类型S的对齐要求比T强(严格),而称T比S弱(宽松)。这种强制的

2014-08-26 10:08:32 1453

原创 STM32硬件开发环境

调试模式:1、RAM调试  0x2000 0000   较小2、FLASH调试 0x0800 0000   较大      (CM3的Flash只能烧写1000次,所以小的调试最好采用RAM调试) Keil4 中STM32工程的配置  1、硬件FLASHDevice  选择相应的芯片 Target Xtal R O M  Areas(代码存储) Star

2014-06-23 10:36:51 1595

原创 PCB设计入门—学习记录

画原理图库时:    快捷键:        “p p”:Place Pin 放置引脚(注意:鼠标所在引脚一端朝外)。         “g”  :Grid 切换栅格对齐精度(1,5,10)。    技巧:        可用多边形来填充。画原理图时:     快捷键:        “p w”:Place Wire 放置导线。        "p t":Pla

2014-03-26 23:03:18 1016

原创 画板子时遇到的问题及经验总结(1)

1.线间距,8mil是最小间距,一般最好用10mil。 2.数字信号线,线宽10mil,全部统一,不要有粗有细。  3.地不用走线,一般敷铜可以代替地线,间距一般在20mil以上,防止短路。  4.记得选上自动跳到电子网格(快捷键“shift+E”,3个档位),要不然你们布的线会出现很多线头。     未选择前 ,类似于这样的,还对不

2014-03-24 11:00:15 1237

转载 舵机控制

1、什么是舵机       舵机是一种位置(角度)伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。目前在高档遥控玩具,如航模,包括飞机模型,潜艇模型;遥控机器人中已经使用得比较普遍。舵机是一种俗称,其实是一种伺服马达。        2、工作原理       控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。它内部有一个基准电路

2014-03-19 19:57:22 2268 1

空空如也

空空如也

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

TA关注的人

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