android camera textureview,Android SDK – camera2 – 在TextureView上绘制矩...
>首先以camera2 api android为例,有一个开源谷歌示例代码. https://github.com/googlesamples/android-Camera2Basic
>对于要绘制矩形的部分(触摸要对焦)的第二步,请按照以下步骤操作 –
>创建一个扩展到SurfaceView的自定义类.
>在此自定义类中调用onTouchListener方法以检测手指坐标并使用android中的paint类绘制矩形.
– 在您的TextureView上方添加此自定义类,该类显示来自camera2的预览.
>将自定义视图变为透明.
>最后当您在设备屏幕上的某个点触摸时,将调用onTouchListener,它将在您在相机预览上方添加的自定义视图的画布上绘制.
>最后清除你的画布,这样就不会在自定义视图中添加矩形,因为你需要在一个时间点使用一个矩形.
>如果一段时间没有触摸,矩形也会消失.使用自定义视图中的处理程序执行此操作
我在这里给你一个经过测试的代码来做到这一点.我希望它可以帮助你.最好的运气.
private class CustomView extends SurfaceView {
private final Paint paint;
private final SurfaceHolder mHolder;
private final Context context;
public CustomView(Camera2BasicFragment context) {
super(context.getActivity().getBaseContext());
mHolder = getHolder();
mHolder.setFormat(PixelFormat.TRANSPARENT);
this.context = context.getActivity().getBaseContext();
paint = new Paint(Paint.ANTI_ALIAS_FLAG);
paint.setColor(Color.WHITE);
paint.setStyle(Paint.Style.STROKE);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
invalidate();
if (mHolder.getSurface().isValid()) {
final Canvas canvas = mHolder.lockCanvas();
Log.d("touch", "touchRecieved by camera");
if (canvas != null) {
Log.d("touch", "touchRecieved CANVAS STILL Not Null");
canvas.drawColor(Color.TRANSPARENT, PorterDuff.Mode.CLEAR);
canvas.drawColor(Color.TRANSPARENT);
canvas.drawCircle(event.getX(), event.getY(), 100, paint);
mHolder.unlockCanvasAndPost(canvas);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
Canvas canvas1 = mHolder.lockCanvas();
if(canvas1 !=null){
canvas1.drawColor(0, PorterDuff.Mode.CLEAR);
mHolder.unlockCanvasAndPost(canvas1);
}
}
}, 1000);
}
mHolder.unlockCanvasAndPost(canvas);
}
}
return false;
}
}
android camera textureview,Android SDK – camera2 – 在TextureView上绘制矩...相关推荐
- android camera入门,android 基础一 Camera1 预览、拍照
预览流程: Camera.open-->camera.setPreviewDisplay->camera.startPreview 拍照:camera.takePicture-->保 ...
- android camera fragment,Android Camera 模块分析(三)
第三部分 Camera的主要实现分析 3.1 JAVA程序部分 在packages/apps/Camera/src/com/android/camera/ 目录的Camera.java文件中,包含了对 ...
- android camera 分辨率,Android:相机帧分辨率大于640x480(Android: camera frame resolution larger than 640x480)...
Android:相机帧分辨率大于640x480(Android: camera frame resolution larger than 640x480) 在Android中,您需要将Surface设 ...
- android camera zoom,android camera2手柄变焦
Im新的android camera2 APi. 我只是将我的所有项目移动到新的Camera2 Api.我用Camera2Basic example作为起点.android camera2手柄变焦 林 ...
- android camera感光,Android Camera2 每次拍照前触发闪光灯打闪的实现
如下内容方便有Camera2基础人查看,如不了解Camera2的人不建议查看. 拍照流程 先执行CaptureRequest.CONTROL_AF_TRIGGER_START锁定AF,然后根据回调不断 ...
- android camera 废弃,Android相机android.hardware.Camera已弃用
API文档 根据Android开发人员指南CameraSupport,他们说: 我们建议将新的android.hardware.camera2 API用于新的应用程序. 在关于CameraSuppor ...
- android camera工程师,Android从Camera中获取图片的两种方法
方法一: 此方法会由Camera直接产生照片回传给应用程序,但是返回的是压缩图片,显示不清晰 /** 启动Camera */ private void intentCamera(){ try { ...
- android camera 动画,Android 使用Camera创建3D动画
在Android中,可以使用android.graphics.Camera这个类进行3D变换 之前更改CameraUI的时候,需要做一个切换前后摄像头的翻转动画,刚开始在网上着了一些翻转动画的代码,合 ...
- android camera滑动,Android怎么实现小米相机底部滑动指示器
Android怎么实现小米相机底部滑动指示器 发布时间:2021-04-15 14:39:38 来源:亿速云 阅读:94 作者:小新 这篇文章给大家分享的是有关Android怎么实现小米相机底部滑动指 ...
- android camera 动画,android高仿小米时钟(使用Camera和Matrix实现3D效果)
继续练习自定义View..毕竟熟才能生巧.一直觉得小米的时钟很精美,那这次就搞它~这次除了练习自定义View,还涉及到使用Camera和Matrix实现3D效果. 一个这样的效果,在绘制的时候最好选择 ...
最新文章
- Python培训分享:Python发展前景怎么样?
- 单片机开发项目全局变量太多怎么管理?
- C#中Lock的秘密
- 在嵌入式公司和在互联网公司写软件,有什么区别?
- 为何Transformer在计算机视觉中如此受欢迎
- bootstrap 简介
- Java程序怎么运行?
- 怎样计算计算机的硬盘大小,硬盘容量大小计算的办法
- 联通路由器设置FTP服务器,做家庭储存云盘
- 电脑桌面的计算机图双击打不开,win10双击电脑图标打不开必须右键打开
- 阿里热更新hotfix
- lowB三人组---冒泡排序原理和实现
- C# 之 概率随机数
- Lenovo UEFI引导U盘 System x Install Windows Server 2016 R2
- 测绘遥感地信 国内外期刊大全
- 第一个Java程序Hello World(IG牛逼)
- 安全狗等级保护建设服务内容有哪些?
- gcov的实现原理简介
- 简单c语言飞碟射击游戏
- MySQL插入数据与系统时间相差12小时
热门文章
- pycharm中安装三方库和cmd下载三方库的选择与区别
- android图片添加多行文字,Android使用SpannableString实现多行文字开头放置标签图案...
- 容器技术Docker K8s 13 容器服务Kubernetes版ACK详解-使用镜像快速创建有状态应用
- 【易实战】Spring Cloud微服务架构12要素应用 Twelve‑Factor App
- matlab水蒸气焓值计算_暖通干货,巧析焓湿图,焓湿图如何应用?一读就懂不容错过...
- jmeter展示内存cpu_Jmeter监控服务器-CPU,Memory,Disk,Network性能指标
- 【机器学习系列】隐马尔科夫模型第三讲:EM算法求解HMM参数
- HDUacm2095
- Keras AlexNet 网络实现 Kaggle 猫狗大战
- 使用Caronte在CTF比赛中完成网络流量分析