SurfaceView连续渲染SurfaceHolder Canvas

Canvas canvas = holder.lockCanvas();
canvas.drawRGB(255, 0, 0);
holder.unlockCanvasAndPost(canvas);

第一行,锁定Surface用于渲染并返回一个可用的Canvas

创新互联建站长期为成百上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为韶山企业提供专业的网站设计、成都网站建设韶山网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。

第二行,解锁Surface并确保通过Canvas进行绘制的内容可显示到屏幕上

例子:

import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.graphics.Canvas;
import android.view.Menu;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
public class MainActivity extends Activity {
      
    FastRenderView renderView;
      
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        renderView = new FastRenderView(this);
        setContentView(renderView);
    }
    protected void onResume() {//重载
        super.onResume();
        renderView.resume();
    }
    class FastRenderView extends SurfaceView implements Runnable
    {
        Thread renderThread = null;
        SurfaceHolder holder = null;
        volatile boolean running = false;
        public FastRenderView(Context context) {
            super(context);
            holder = getHolder();
        }
        public void resume()//自定义
        {
            running = true;
            renderThread.start();
        }
        public void run()
        {
            while(running)
            {
                if(!holder.getSurface().isValid())
                    continue;
                Canvas canvas = holder.lockCanvas();
                canvas.drawRGB(255, 0, 0);
                holder.unlockCanvasAndPost(canvas);
            }
        }
        public void pause()//自定义
        {
            running = false;
            while(true)
            {
                try {
                    renderThread.join();
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

网站题目:SurfaceView连续渲染SurfaceHolder Canvas
分享地址:http://bzwzjz.com/article/iesdso.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 宜宾网站设计 重庆企业网站建设 手机网站建设 网站设计制作报价 网站建设推广 成都商城网站建设 重庆网站制作 网站建设公司 营销型网站建设 攀枝花网站设计 成都网站制作 成都做网站建设公司 成都网站制作 成都网站建设 高端网站设计推广 重庆企业网站建设 成都网站设计 成都网站设计 成都网站制作 网站建设 成都网站建设 成都响应式网站建设公司