画三角形报错bad_Alloc 原因,回调用错

surfaceCreated(SurfaceHolder holder):onSurfaceCreated(GL10 gl, EGLConfig c)是Android OpenGL ES开发中涉及Surface管理的两个关键方法,但它们属于不同类别的回调函数:

surfaceCreated(SurfaceHolder holder)

  • 所属类 ‌:SurfaceHolder的回调方法,用于监听Surface创建事件。当SurfaceView的Surface被创建时触发,通常用于初始化渲染线程或资源。 ‌
  • 典型用法 ‌:在SurfaceHolder.addCallback(this)中注册回调,确保在Surface可用后进行绘制操作。

onSurfaceCreated(GL10 gl, EGLConfig c)

  • 所属类‌:EGL的初始化回调,用于EGL配置完成后的初始化操作。通常在EGL初始化流程中调用,与OpenGL ES渲染线程相关。 ‌

关键区别

  1. 触发时机 ‌:surfaceCreated在Surface生命周期开始时触发;onSurfaceCreated在EGL配置完成后调用。
  2. 应用场景‌:前者用于自定义视图渲染或相机预览;后者涉及OpenGL ES的底层配置和渲染线程初始化。 ‌
  3. 线程安全 ‌:surfaceCreated需在非UI线程操作;onSurfaceCreated需在EGL初始化线程中调用。 ‌
相关推荐
limuyang21 小时前
PDF Viewer KMP(基于 chrome 的 PDFium 内核)
android·kotlin
心平气和量大福大5 小时前
android-控件-搜索框SearchView
android·gitee
2601_962177135 小时前
【MySQL篇】聚合查询,联合查询
android·java·mysql
壮哥_icon5 小时前
【Android】批量 VectorDrawable 动态分别修改 fillColor 和 strokeColor 的踩坑与终极解决方案
android
齐天qaq6 小时前
Android 系统 APK 分区与权限
android
心平气和量大福大6 小时前
android-控件-多选框CheckBox
android·gitee
pengyu8 小时前
【Kotlin 协程修仙录 · 大乘境 · 初阶】 | 跳出三界:协程在 KMP 与后端开发中的跨平台之道
android·kotlin
XiaoLeisj8 小时前
Android Memory Profiler:堆内存指标、内存抖动与泄漏定位
android·性能优化·内存抖动·内存泄露·memory profiler
未来猫咪花8 小时前
Everything is ViewModel:让状态管理回到对象世界
android·flutter·ios