OpenGLES的简单应用绘图,以及照相机画面变色变形渲染(一)

本文详细介绍了Android中的四种视图:View、SurfaceView、TextureView和GLSurfaceView的特点及应用场景。View适用于基本UI显示;SurfaceView利用双缓存机制实现流畅动画效果;TextureView支持变换操作并需在硬件加速下工作;GLSurfaceView则专为OpenGlES图形渲染设计。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基础一:android中的视图
谈到Android中的视图,不得不提的有View、SurfaceView、TextureView和GLSurfaceView这四种视图,各有优缺点,使用的方向、方法、内部运行机制都不太相同。
View:最常用,在Android中运行在主线程中绘画,用于直接显示视图。构建流程为:计算view大小、layout布局在父view中、画图。
SurfaceView:双缓存机制,即两张画布,一张临时画,另一张最终显示,交替进行。在子线程中画,在主线程中刷新显示,不会导致主线程阻塞,且速度较快,往往用于动态图展示、视频播放、游戏显示、照相机实时画面。自带Surface(内存中的一部分作为缓冲区)。
TextureView:SurfaceView内容不在应用窗口上显示,所以不能进行一些变换,如平移、缩放、旋转等。TextureView没有Surface,所以可以像一般的View一样进行变换操作,TextureView必须在硬件加速开启的窗口中。 获取用于渲染内容的SurfaceTexture,来做文章即可。myTexture.setRotation(90.0f);一句代码即可改变显示角度。
GLSurfaceView:import android.opengl.GLSurfaceView;这段代码即可知道这个继承自SurfaceView的类是做什么的了。但是这个必须用在有GPU加速的环境下,配合OpenGlES使用。适配性差。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值