- 博客(17)
- 资源 (136)
- 收藏
- 关注
原创 CSDN Android客户端开发(二):详解如何基于Java用Jsoup爬虫HTML数据
本文参考链接详细介绍如何使用Jsoup包抓取HTML数据,是一个纯java工程,并将其打包成jar包。希望了解如何用java语言爬虫网页的可以看下。 杂家前文就又介绍用HTTP访问百度主页得到html的string字符串,但html的文本数据如果不经过处理就是个文本字符串没有任何效果的。所谓的浏览器就是负责将文本的html“翻译”成看到的界面。在前文有介绍,这个csdn的客户端app分首页、业界、
2014-07-31 00:57:37 26500 19
原创 让Android控件随着屏幕旋转自由转移至任何地方(附demo)
本文主要介绍Android ViewGroup/View的绘制流程,及常用的自定义ViewGroup的方法。在此基础上介绍动态控制View的位置的三种方法,并给出最佳的一种方法。一、ViewGroup/View的绘制流程 简单的说一个View从无到有需要三个步骤,onMeasure、onLayout、onDraw,即测量大小、放置位置、绘制三个步骤。而ViewGroup的onMeasure、onL
2014-07-26 19:52:24 22196 4
原创 Java拾遗(一):浅析Java子类和父类的实例化顺序 及 陷阱
本文主要介绍Java里常用的子类和父类的变量实例化顺序及陷阱,并结合一个Android实例来探讨此问题。日后编程中应尽量避免此陷阱。首先看下面一段代码:定义一个虚类Server.javapackage org.yanzi.test1;public abstract class Server { private static final int DEFAULT_PORT = 900; pub
2014-07-25 21:36:13 15527 9
原创 玩转Android Camera开发(五):基于Google自带算法实时检测人脸并绘制人脸框(网络首发,附完整demo)
本文主要介绍使用Google自带的FaceDetectionListener进行人脸检测,并将检测到的人脸用矩形框绘制出来。本文代码基于PlayCameraV1.0.0,在Camera的open和preview流程上进行了改动。原先是放在单独线程里,这次我又把它放到Surfaceview的生命周期里进行打开和开预览。 首先要反省下,去年就推出了静态图片的人脸检测demo,当时许诺一周内推出C
2014-07-25 01:19:25 63321 94
原创 Java经典23种设计模式之行为型模式(四)
本文介绍11种行为型设计模式里的策略模式、模板方法、访问者模式。一、策略模式定义一系列的算法,把它们每个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化。1.Strategy定义所有支持的算法的公共接口。Context使用这个接口来调用某ConcreteStrategy定义的算法。public abstract class Strategy { public abst
2014-07-22 23:49:32 2533
原创 Java经典23种设计模式之行为型模式(三)
本文接着介绍11种行为型模式里的备忘录模式、观察者模式、状态模式。一、备忘录模式 在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可以将该对象恢复到原先保存的状态。还是比较好理解的。1.Memento 备忘录存储原发器对象的内部状态,这个类就是要存储的对象的状态。状态需要多少个变量,在Memento里就写多少个变量。public class Memento {
2014-07-14 20:01:15 2296
原创 算法整理(四):浅析快速排序的优化问题
前文介绍了快速排序的单边扫描和双边扫描,但么有做对比,今天来简单分析下。一、单边扫描的缺点 单边扫描最大的缺点是每次都要交换,如果一个数组是 5 4 3 2 1,用单边扫描的话,则从4开始,4要和4交换一次,3要和3交换一次,依次类推,这种无意义的操作。正因此用双边扫描会更好,第一趟只需交换一次,就能得到1 4 3 2 5这样的数组。但双边扫描也是可以进一步优化的。二、双边扫描的优化 优化一:对k
2014-07-11 00:00:32 2853
原创 Java经典23种设计模式之结构型模式(三)------附代理模式、适配器模式、外观模式区别
本文介绍7种结构型模式里的剩下两种:享元模式、代理模式。一、享元模式FlyWeight 享元模式比较简单且重要,在很多场合都被用到,只不过封装起来了用户看不到。其概念:运用共享内存技术最大限度的支持大量细粒度的对象。这个概念给的有些抽象,说白了就是如果内存中存在某个对象A,如果再次需要使用对象A的时候如果内存中有A这个对象就直接使用它,不要再次new了。如果没有,则重新new一个。基于这个特点,享
2014-07-10 23:33:23 3492
原创 Java经典23种设计模式之结构型模式(二)
接上篇,本文介绍结构型模式里的组合模式、装饰模式、外观模式。一、组合模式(Composite) 组合模式:将对象组合成树形结构,表示“部分--整体”的层次结构。最终达到单个对象和组合对象的使用具有一致性。单看这句话貌似有点抽象,其实比较简单。 以李云龙的独立团为例,目的要统计赵嘉宇一战共歼灭敌人多少个。最高的级别是团,一个团有若干个营,一个营有若干个排,一个排有若干个战士。(为了简化问题,排下面就
2014-07-09 23:25:25 2354 1
原创 算法整理(三):插入排序
插入排序很简单,就像打扑克。手里有个牌4,再来一张牌5就本能的放到第一个牌的右边。如果来了个3就从右往左扫描,只要左边的比这个待插入数字大就交换。 插入排序是一种稳定的排序方法,时间复杂度O(n*n),空间复杂度O(1),最好的情况下时间复杂度为O(1).即本来就是一个有序或者相等的数组,则只需比较n-1次即可。下为源码,只需三行代码即可。//===========================
2014-07-09 21:05:52 2117
转载 详细解析Java中抽象类和接口的区别
转载自:http://dev.yesky.com/436/7581936.shtml在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进 行抽象类定义时对于
2014-07-09 00:15:18 1873 1
原创 Java经典23种设计模式之结构型模式(一)
结构型模式包括7种:适配器模式、桥接模式、组合模式、装饰模式、外观模式、享元模式、代理模式。本文主要介绍适配器模式和桥接模式。一、适配器模式(Adapter) 适配器模式其实很简单,就像手机充电器一样,手机需要5V的,而插座出来是220V。因此需要充电器变压就ok。再比如,一个之会说汉语的和一个只会说英语的无法沟通,那就中间请个翻译。所有的交流通过翻译,翻译翻给会说英语的,就能完成一次单项交流的。
2014-07-08 22:53:49 3549
原创 Java经典23种设计模式之创造型模式(二)
本文记录5种创造型模式的剩下两种:建造者模式(Builder)、原型模式(PROTOTYPE)。一、建造者模式(别名:生成者模式)将复杂对象的构建和它的表示分离,使得同样的构建过程可以创建不同的表示。一个完整的建造者模式包含以下几个概念:1、产品类 Productpublic class Person { private String head; private Str
2014-07-08 00:07:28 3253 1
原创 Java经典23种设计模式之创造型模式(一)
设计模式被称为程序员的内功,之前零零散散的看过一大部分,但自己么有总结过,故此次在这里总结下。值得一提的是,设计模式并非Java所特有。因为一直搞Android,这里就用Java为载体。最经典的设计模式有23种,分三个大类型: 创建型模式(5) 、结构型模式(7)、行为型模式(11),5 + 7 +11 = 23.网上一搜也都是一大把了,这里仅仅是个人作的记录。本文记录创造型模式里的工厂方法(Fa
2014-07-07 00:32:50 3890
原创 Android自定义UI陷阱:LayoutInflater.from().inflate()一定不能工作在父类或虚类里
问题背景:有一些UI具有共性,比如常见的app第一次运行时出现的各种指示框,告诉你往哪搓是调音量的,往哪点是调屏幕亮度的,当点击这些VIew,则其自动消失。或者一动时间后,自动消失。另外一个问题是,不同的方向下加载出来的指示View内容是不一样的。 为此需要将这些特点的View抽象出来,写个父类或者说是基类,为啥一定要这样搞,这样写好处很多。优点如下:1、可以让代码变得更简洁。每个子View里的共
2014-07-06 16:04:53 30685 6
node-v8.10.0.pkg(mac上64位node.js安装文件)
2018-03-18
R2016a_patch_1465823_2016-09-21.dmg
2017-09-02
R2016a_patch_1465823_2016-09-21(Mac上Matlab2016a中文乱码的官方补丁)
2017-03-24
Sublime Text Build 3126 x64(windows平台,含必备插件版本)
2017-01-25
Sublime Text Build 3126 x64(含注册码)
2017-01-25
Araxis.Merge.Professional.v2016.4761 最新版破解版
2016-12-14
计算facebook sdk需要的key hashes
2015-12-02
Apktool_v2.0.1
2015-09-04
jd-gui-osx-1.4.0
2015-09-04
android属性动画和view动画区别的测试代码
2015-08-22
nineoldandroids-2.4.0.jar
2015-08-22
jd-gui-0.3.6.windows
2014-08-08
dex2jar-0.0.9.15
2014-08-08
APK-Multi-Toolv1.0.11
2014-08-08
Fragment demo仿QQ主界面
2014-08-07
利用Jsoup爬虫csdn网页的html数据
2014-07-31
view随着屏幕旋,动态改变其位置
2014-07-26
PlayCamera[基础Google自带算法Camera实时检测人脸并绘制]
2014-07-25
PlayCamera_V1.0.2(Camera只拍摄矩形区域图片)
2014-06-26
PlayCamera_V3.0.0[使用GLsurfaceView预览Camera 拍照demo]
2014-06-24
PlayCamera_V2.0.0[TextureView预览Camera 拍照完整demo]
2014-06-23
PlayCamera_V1.0.0(SurfaceView预览Camera,拍照demo)
2014-06-23
Android OpenGL入门示例:绘制三角形和正方形
2014-06-11
基于Servlet、JSP、JDBC、MySQL的登录模块
2014-06-04
Java封装的操作MySql数据库框架
2014-05-25
MD5和RSA加密算法Java完成实现
2014-05-21
ViewPager底部带圆圈标识
2014-04-23
Google官方带旋转动画的自定义ImageView
2014-03-29
HttpURLConnection访问网页下载图片示例代码
2014-03-27
横向ListView的完整实现 包含基于横向listview做的一个小相册demo
2014-03-15
Java和JNI读取android apk里assets文件夹示例demo
2014-03-08
Java通过JNI调用Eclipse、MinGW编译C++出来的dll
2014-02-01
基于Android自带API的 静态图片人脸检测demo
2013-12-29
Cygwin中make3.8.1的修正版
2013-11-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人