Android 自定义控件 单页翻书控件

2014-11-24 03:29:28 · 作者: · 浏览: 2

至此,翻书的控件也写的差不多了,单页翻书控件和之前写的翻书控件大致差不多,之前的是一次显示2页,考虑到屏幕尺寸不一定能刚好达到2页的正常比例,为了不引起变形,继续写了这个单页翻书的控件。


不少网友对我的代码感兴趣,不过因为公司的保密协定,代码不能公布,在此只能提供技术指导,请见谅。


view.draw(canvas);


通过这句代码,可以把一个已经布局好的View(也就是已经渲染完的)画到一个canvas对象里。对canvas做如下设置:


Bitmap tmpBmp = Bitmap.createBitmap(contentWidth,contentHeight,Bitmap.Config.ARGB_8888);


Canvas mCanvas = new Canvas(tmpBmp);


然后把已经布局好的View画入该画布,这样temBmp里的内容就是View的全部内容,相当于截屏。然后在相应的事件里,计算好位置角度,将tmpBmp画入surfaceview。


单页翻书效果如下:


Android 自定义控件 单页翻书控件


Android 自定义控件 单页翻书控件


Android 自定义控件 单页翻书控件