android surfaceview 怎么用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android surfaceview 怎么用相关的知识,希望对你有一定的参考价值。
参考技术A @Overridepublic void surfaceDestroyed(SurfaceHolder holder)
上面代码我们在SurfaceView的构造方法中执行了init初始化方法,在这个方法里,我们先获取SurfaceView里的 SurfaceHolder对象,然后通过它设置Surface的生命周期回调方法,使用DemoSurfaceView类本身作为回调方法代理类。 surfaceCreated方法,是当SurfaceView被显示时会调用的方法,所以你需要再这边开启绘制的线 程,surfaceDestroyed方法是当SurfaceView被隐藏会销毁时调用的方法,在这里你可以关闭绘制的线程。上面的例子运行后什么也不 显示,因为还没定义一个执行绘制的线程。下面我们修改下代码,使用一个线程绘制一个逐渐变大的圆圈:
[java] view plain copy print?
package com.android777.demo.uicontroller.graphics;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.SurfaceHolder;
import android.view.SurfaceHolder.Callback;
import android.view.SurfaceView;
public class DemoSurfaceView extends SurfaceView implements Callback
LoopThread thread;
public DemoSurfaceView(Context context)
super(context);
init(); //初始化,设置生命周期回调方法
private void init()
SurfaceHolder holder = getHolder();
holder.addCallback(this); //设置Surface生命周期回调
thread = new LoopThread(holder, getContext());
@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width,
int height)
以上是关于android surfaceview 怎么用的主要内容,如果未能解决你的问题,请参考以下文章
android从view切换surfaceview的时候,出现短暂的黑屏,怎么处理
android videoview和surfaceview的区别
android ViewPager 嵌套SurfaceView切换时卡顿黑屏怎么处理