HTTP、Canvas、Paint

来源:互联网 发布:北京程序员培训 编辑:程序博客网 时间:2024/05/16 18:53
1. HTTP
1) HTTP--超文本传输协议,作用:定义浏览器怎么向万维网服务器请求万维网文档,及服务器怎样把文档传送给浏览器。属于应用层协议。
超文本就是用超链接的方法,将各种文字信息组织在一起的网状文本。
2) 请求头、响应头
 请求方式的格式为:URL、协议版本号、后边是MIME信息(包括请求修饰符、客户机信息和可能的内容).
 响应的信息:是一个状态行,包括协议版本号、成功或错误的code、后边是MIME信息(包括服务器信息、实体信息和可能的内容)
3)URL 统一资源定位符
  http://www.baidu.com/
  URL由三部分组成:
  ① 协议(http,https--加密的)  ② 主机IP地址:端口号  ③ 主机资源具体地址
几乎所有的URI都是URL.
Http是建立在TCP/IP基础之上的协议,所以要经过3次握手。 现在用的都是Http1.1版本。
android默认的发送数据的码是UTF-8,所以用post发送数据是不需要转码的;而使用GET方式是通过URL向服务器发送数据是需要转码的。

2. ListView与PopupWindow

 现在要实现一个这样的功能:长按ListView的Item时,在ListView的底端弹出一个PopupWindow,点击PopupWindow中的控件做出相应处理。
 问题:弹出的PopupWindow会挡住ListView最后一个Item.
 解决:在布局中<ListView/>下面加入一个<View/>,它的高度和Item高度一样,平时为Gone,长按时让它Visibility,就可以了。

3. Paint
3.1. ColorMatrix :4*5 的矩阵  功能:亮度、色度、饱和度 设置
   Matrix:3*3 的矩阵   功能:旋转、缩放、平移 
   都是左乘的(这个矩阵在左边),pre (左乘)  post (右乘)
3.2. Paint的方法
 ① FontMetrics
  assent(上坡度)、baseline(下坡度)、desent、leading(行间距).
 ② setMaskFilter:BlurMaskFilter和EmbossMaskFilter
  4.2.1 BlurMaskFilter:模糊遮罩滤镜  软阴影的效果
    模糊的类型:SOLID、NORMAL,OUTER和INNER
    SOLID:在图像的Alpha边界外产生一层与Paint颜色一致的阴影效果而不影响图像本身
    NORMAL:会将整个图像模糊掉
    OUTER:会在Alpha边界外产生一层阴影且会将原本的图像变透明
    INNER:会在图像内部产生模糊(很少用)
  4.2.2 EmbossMaskFilter:浮雕遮罩滤镜  似浮雕的效果
    EmbossMaskFilter(float[] direction, float ambient, float specular, float blurRadius)
    direction:光照的方向 
    ambient:用来设置环境光的,其值越大,阴影越浅
    specular:其值是个双向值越小或越大高光越强中间值则是最弱的
    blurRadius:设置图像究竟“凸”出多大距离
 ③ setPathEffect ---路径效果
  没有PathEffect(直的转折生硬)、
  CornerPathEffect(路径的转角变得圆滑)
  DiscretePathEffect(离散路径效果,类似生锈铁丝的效果)
  DashPathEffect(线条变成了一长一短的间隔线条)、
  PathDashPathEffect(让开发者自己定义路径虚线的样式)、
  ComposePathEffect(先将路径变成innerpe的效果,再去复合outerpe的路径效果)、
  SumPathEffect(把两种路径效果加起来再作用于路径)
 ④ setShadowLayer --为我们绘制的图形添加一个阴影层效果
 ⑤ setColorFilter -- 就像拿个筛子把颜色“滤”一遍获取我们想要的色彩结果
  ColorMatrixColorFilter、LightingColorFilter和PorterDuffColorFilter
  ColorMatrixColorFilter :色彩矩阵颜色过滤器,4x5的float[]类型的矩阵,通过设置ColorMatrix可以得到柔和、黑白照等效果
  LightingColorFilter : 光照颜色过滤
  LightingColorFilter (int mul, int add)  
    mul全称是colorMultiply意为色彩倍增,而add全称是colorAdd意为色彩添加,这两个值都是16进制的色彩值0xAARRGGBB
 ⑥ setXfermode PorterDuffXfermode
 ⑦ setShader  着色器
 BitmapShader,ComposeShader,LinearGradient,RadiolGradient,SweepGradient
 BitmapShader -- 三种模式:CLAMP、MIRROR和REPETA
 LinearGradient -- 颜色线性渐变
 SweepGradient -- 扫描式渐变,因为其效果有点类似雷达的扫描效果
 RadialGradient -- 径向渐变,圆形中心向四周渐变的效果
 ComposeShader -- 将两个Shader组合在一起作为一个新Shader








































0 0
原创粉丝点击