文章目录 一 View 二 Paint 2.1 颜色处理 2.2 文字处理 2.3 特殊处理 三 Canvas 3.1 界面绘制 3.2 范围裁切 3.3 集合变换 四 Path 4.1 添加图形 4.3 画线(直线或曲线) 4.3 辅助设置和计算 文章源码 DrawView WaveView RippleLayout LabelImageView 本文还提供了三个综合性的完整实例来辅助理解. View绘制 - 图片标签效果实现 Canvas绘图 - 水面涟漪效果实现 二阶贝塞尔曲线的应用 -…
前言 本文将演示一个iOS客户端程序,通过UDP协议与两个典型的NIO框架服务端,实现跨平台双向通信的完整Demo.服务端将分别用MINA2和Netty4进行实现,而通信时服务端你只需选其一就行了.同时用MINA2和Netty4分别实现服务端的目的,是因为很多人都在纠结到底是用MINA还是Netty来实现高并发的Java网络通信服务端,在此干脆两个都实现了,就看你怎么选择了,够吊吧. NIO框架的流行,使得开发大并发.高性能的互联网服务端成为可能.这其中最流行的无非就是MINA和Netty了,M…
(hadoop安装方法:http://blog.csdn.net/wangjia55/article/details/53160679这里不再累述) hadoop是针对大数据设计的一个计算架构.如果你有几百TB的数据需要检索,你在控制终端敲下命令,计算机会向几百分布式台云服务器同时发布命令,使他们开始运行.并且把结果返回给你 hadoop分为大概念, HDFS(分布式文件系统)+MapReduce(分布式计算模型) HDFS 优点 适合大文件的存储,并且由备份策略,有比较好的容错和恢复机制,支持…
来源: http://blog.csdn.net/singwhatiwanna/article/details/48350919 很多人认为Handler的作用是更新UI,这说的的确没错,但是更新UI仅仅是Handler的一个特殊的使用场景,具体来说是这样的:有时候需要在子线程中进行耗时的IO操作,这可能是读取文件或者访问网络等,当耗时操作完成以后可能需要在UI上做一些改变,由于Android开发规范的限制,我们并不能在子线程中访问UI控件,否则就会触发程序异常,这个时候通过Handler就可以…
文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX上使用NFS安装前准备(六) ORACLE ENTERPRISE LINUX 5.7下DATABASE 11G RAC集群安装(七) ORACLE ENTERPRISE LINUX 5.7下DATABASE 11G RAC数据库安装(八) ORACLE ENTERPRISE LINUX 5.7下DA…
EF框架step by step(1)—Database-First EF框架step by step(2)—Model-First EF框架step by step(3)—Code-First 通过项目,我们了解到EF框架有三种数据持久化的方式,也就是标题中我所提到的三种.那么这些方式之间又有什么联系和区别呢? 先分别介绍一下这三种方法的联系: 1.Database First是基于已存在的数据库,利用某些工具(如VS提供的EF设计器)创建实体类,数据库对象与实体类的匹配关系等,你也可以手动修…
NetworkImageView 分析:public class NetworkImageView extends ImageView 他继承自ImageView,并且添加了一个新方法: public void setImageUrl(String url, ImageLoader imageLoader) {}该参数包含一个Url地址和一个ImageLoader对象 还有一个核心方法 private void loadImageIfNecessary(final boolean isInLay…
Message是Handler接收和处理的消息对象. 每个线程只能拥有一个Looper.它的loop方法读取MessageQueue中的消息,读到消息之后就把消息交给发送该消息的Handler进行处理.MessageQueue是消息队列,它采用先进先出的方式来管理Message.程序创建Looper对象时会在它的构造器中创建MessageQueue对象. 下面用一个例子说明.不能在主线程中执行耗时的工作,否则会报ANP错误.常用的方法是在主线程中向子线程中发消息,交给子线程处理.看下面的例子.…
3.1 系统架构 ZooKeeper集群是由多台机器组成的,每台机器都充当了特定的角色,各种角色在协作过程中履行自己的任务,从而对外提供稳定.可靠的服务. 由上图可知,ZooKeeper集群由多台机器组成(这不废话吗),客户端的请求有可能被分配给任何一台机器来处理.考虑下面一个场景:客户端A问机器1,现在几点了,机器1回答下午两点半:与此同时,客户端B问机器2,现在几点了,机器2说,凌晨三点.两个客户端一交流,发现路唇不对马嘴,整个世界就乱了.可见,ZooKeeper集群时刻需要保持内部统一,无…
Android Studio升级到2.0之后,新增了Instant Run功能,该功能可以热替换apk中的部分代码,大幅提高测试安装的效率. 但是,由于我的项目中自定义了一些ClassLoader,当使用InstantRun时,经常出现class加载不正确的问题.分析后原因如下. 使用Instant Run编译出的apk里面会多出几个dex文件,和一个instant-run.zip,这个zip里也是一堆dex文件: 所以推测,instant Run的实现原理是: 根据代码结构,将App的源码分割…