View scoller滑动问题:
scrollTo(int x,int y):x代表相对于(0,0)位置的偏移量
scrollBy(int x,int y):x代表相对于(getScrollX(),getScrollY())位置的偏移量。
系统学习之-自定义View的绘制-Paint详解
Painter 绘制图片样式叠加的3种场景:PorterDuff.Mode
ComposedShader
ColorFilter
xPerforme
Painter
两个色彩优化的方法:
setDither(dither) ,设置抖动来优化色彩深度降低时的绘制效果;
setFilterBitmap(filterBitmap) ,设置双线性过滤来优化 Bitmap 放大绘制的效果。
ComposePathEffect
paint.setPathEffect(pathEffect) 设置path绘制效果:
CornerPathEffect DiscretePathEffect DashPathEffect PathDashPathEffect ,和组合效果的 SumPathEffect ComposePathEffect
附加效果
setShadowLayer()
外层阴影效果
setMaskFilter()
外层模糊效果
自定义View extends ViewGroup无法展现?
extends ViewGroup 必须重写onmeasure,onlayout
onmeasure 必须实现如下方法:
需要measureChrildren
设置自己的高度使用 setMeasureDimontions()
onlayout必须实现如下方法:
child.layout();
invalidate :draw、layout、measure方法
requestLayout:layout、measure方法。
requestfocus:ondraw方法,但是不重新绘制存在的view
Draw()
drawBackground(canvas);
// Step 3, draw the content
onDraw(canvas);
// Step 4, draw the children
dispatchDraw(canvas);
onDrawForeground(canvas);
参考资料:
<<
Android中measure过程、WRAP_CONTENT详解以及xml布局文件解析流程浅析(上)
>>
<<
Android中measure过程、WRAP_CONTENT详解以及xml布局文件解析流程浅析(下)
>>
1、View的几种不同状态属性。
2、如何根据不同状态去切换我们的背景图片。
友情链接:
http://blog.csdn.net/wenxuzl99/article/details/16112725
Android中将布局文件/View添加至窗口过程分析 ---- 从setContentView()谈起
(读后感Window和DecorVieW类的联系、View添加至窗口过程)
Android中View绘制流程以及invalidate()等相关方法分析
mesure()绘图过程
layout()绘图过程
draw()绘图过程
Android 自定义View绘制教程1
http://www.gcssloop.com/customview/CustomViewIndex