SurfaceView 绘制的时候出现黑背景的如下

或者如下

处理方法就是添加

 //画布透明处理this.setZOrderOnTop(true);this.mSurfaceHolder.setFormat(PixelFormat.TRANSLUCENT);

下面是是一个绘制圆环的方法,具体如下,没有黑色的背景

public class MySurfaceView extends SurfaceView implements SurfaceHolder.Callback, Runnable {private SurfaceHolder mSurfaceHolder;private Canvas mCanvas;private Paint paint;public MySurfaceView(Context context) {super(context);initView();}public MySurfaceView(Context context, AttributeSet attrs) {super(context, attrs);initView();}public MySurfaceView(Context context, AttributeSet attrs, int defStyleAttr) {super(context, attrs, defStyleAttr);initView();}private void initView() {paint = new Paint();paint.setColor(Color.RED);paint.setStrokeWidth(10);paint.setStyle(Paint.Style.STROKE);// 返回SurfaceHolder,提供对该SurfaceView的基础表面的访问和控制this.mSurfaceHolder = getHolder();//注册回调方法this.mSurfaceHolder.addCallback(this);//画布透明处理this.setZOrderOnTop(true);this.mSurfaceHolder.setFormat(PixelFormat.TRANSLUCENT);}@Overridepublic void surfaceCreated(SurfaceHolder holder) {// Surface创建时触发new Thread(this).start();}@Overridepublic void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {// Surface改变时触发}@Overridepublic void surfaceDestroyed(SurfaceHolder holder) {// Surface销毁时触发}@Overridepublic void run() {Drawing();}// 绘制圆private void Drawing() {mCanvas = mSurfaceHolder.lockCanvas();if (null != mCanvas) {mCanvas.drawColor(Color.TRANSPARENT, PorterDuff.Mode.CLEAR);mCanvas.drawCircle(200, 200, 200, paint);mSurfaceHolder.unlockCanvasAndPost(mCanvas);}}}

Android SurfaceView 黑背景的处理方法相关推荐

  1. [转]Android SurfaceView 绘图覆盖刷新及脏矩形刷新方法

    本文转自:http://www.cnblogs.com/SkyD/archive/2010/11/08/1871423.html SurfaceView在Android中用作游戏开发是最适宜的,本文就 ...

  2. 详解与重构hyman《Android SurfaceView实战 打造抽奖转盘》

    详解与重构hyman<Android SurfaceView实战 打造抽奖转盘> 作者:邵励治 一.概述--关于SurfaceView您不得不知道的二三事 1.SurfaceView是干什 ...

  3. Android SurfaceView实战 带你玩转flabby bird (下)

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/43063331,本文出自:[张鸿洋的博客] 1.概述 在Android Surfa ...

  4. Android SurfaceView实战 带你玩转flabby bird (上)

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 转载请标 ...

  5. Android SurfaceView实战 带你玩转flabby bird

    分析 仔细观察游戏,需要绘制的有:背景.地板.鸟.管道.分数: 游戏开始时: 地板给人一种想左移动的感觉: 管道与地板同样的速度向左移动: 鸟默认下落: 当用户touch屏幕时,鸟上升一段距离后,下落 ...

  6. Android SurfaceView总结及代码示例

    #一.概述 SurfaceView与普通View不同,View树上的普通View共享一个Surface,而SurfaceView拥有单独的Surface. 而且普通View必须在UI线程中绘制,而Su ...

  7. Xposed: 勾住(Hook) Android应用程序对象的方法,实现AOP

    Xposed Xposed能够勾住(Hook) Android应用程序对象的方法,实现AOP,一个简单的例子: public class WebViewHook implements IXposedH ...

  8. MyEclipse 10 中安装Android ADT 22插件的方法

    MyEclipse 10 中安装Android ADT 22插件的方法 下载ADT包:http://dl.google.com/android/ADT-22.0.0.zip 将ADT-22.0.0.z ...

  9. android 按钮放中间,Android实现button居中的方法

    本文实例讲述了Android实现button居中的方法.分享给大家供大家参考.具体如下: 通过在main.xml 或者其他xml 布局文件中布局Button的时候,选择Android:gravity= ...

最新文章

  1. P1132 数字生成游戏
  2. VisualSVN Server2.5服务器迁移
  3. Nginx安装、默认虚拟主机、Nginx用户认证、Nginx域名重定向
  4. Linux 2.6 内核定时器
  5. Python之十大经典排序算法的实现和原理
  6. matlab安装配置vc出错,64位系统安装matlab出现mexopts.bat及出现缺少或无法安装c++ compilers 故障的解决办法.pdf...
  7. Linux 系统应用编程——网络编程(高级篇)
  8. 建个数据中心就想发展IDC?没那么简单!
  9. [Java] 蓝桥杯ADV-185 算法提高 五次方数
  10. Git 命令 clone、add、status、commit、push、init 使用介绍.
  11. 【程序人生】Web前端工程师岗位分析报告
  12. 笔记本作服务器配置无线网卡,如何利用笔记本电脑的无线网卡搭建局域网
  13. [Unity]Unity3D游戏引擎游戏开发软件相比与其他的优势
  14. [玩转UE4/UE5动画系统>C++篇>C++基础] 之 C++版模板中那些琐碎而又应知应会的语法知识小结(本文献给刚学完谭浩强就来啃UEC++的同学)
  15. Java微信公众号开发之微信公众平台接入开发者
  16. libusb,libusbk,winusb的区别
  17. 优化 Flash 性能
  18. 程序人生——苏嵌第三天
  19. python编程基础知识入门
  20. 【读书笔记】《微习惯:瘦身篇》

热门文章

  1. mysql并发更新数据,多用户并发修改数据解决方案。
  2. 2022-2028年中国超韧尼龙行业市场调查分析及未来前景分析报告
  3. 浅显易懂 Makefile 入门 (06)— 文件名操作函数(dir、notdir、suffix、basename、addsuffix、addperfix、join、wildcard)
  4. 一段神奇的c代码错误分析
  5. 分析两小段c++代码 关于unsigned运算的坑
  6. 顺时针打印矩阵 python
  7. 每个年龄段,都有每个年龄段的“好”
  8. SpringBoot (三) :SpringBoot使用Freemarker模板引擎渲染web视图
  9. 相关性检验_相关系数
  10. python常用魔法函数