Android SurfaceView预览相机黑屏问题解决方案

解决方案

1、使用动态添加的方式添加surfaceView

在xml文件中添加FrameLayout

复制代码
<FrameLayout
    android:id="@+id/colorsurface"
    android:layout_width="match_parent"
    android:layout_height="match_parent" /> 

2.创建SurfaceView并添加到FrameLayout上

复制代码
surfaceView = new SurfaceView(this);
screenBinding.colorsurface.addView(surfaceView);

3.最后设置surfaceview两个属性

复制代码
surfaceView.setZOrderMediaOverlay(true);
surfaceView.getHolder().setFormat(PixelFormat.TRANSPARENT);

即可解决surfaceview每次预览都会黑屏一下的问题。

相关推荐
奔跑中的蜗牛66612 小时前
一次播放器架构升级:Android 直播间 ANR 下降 60%
android
测试工坊14 小时前
Android 视频播放卡顿检测——帧率之外的第二战场
android
Kapaseker16 小时前
一杯美式深入理解 data class
android·kotlin
鹏多多16 小时前
Flutter使用screenshot进行截屏和截长图以及分享保存的全流程指南
android·前端·flutter
Carson带你学Android16 小时前
OpenClaw移动端要来了?Android官宣AI原生支持App Functions
android
黄林晴16 小时前
Android 删了 XML 预览,现在你必须学 Compose 了
android
三少爷的鞋16 小时前
Android 面试系列 | 内存泄露:从"手动配对"到"架构自愈"
android
恋猫de小郭16 小时前
什么 AI 写 Android 最好用?官方做了一个基准测试排名
android·前端·flutter
louisgeek1 天前
Android MediatorLiveData
android
锋风2 天前
远程服务器运行Android Studio开发aosp源码
android