微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Android – 在相机上显示网格线

我是 android应用程序开发的新手.我想创建一个从相机获取流并在SurfaceView或FrameLayout上显示的应用程序.

我需要在流媒体“显示网格线”上面显示一个选项,当用户点击它时,网格线将显示在相机流上.

任何人都可以帮我,我怎样才能在相机流媒体上显示网格线?

任何帮助都会很明显……

谢谢.
穆赫辛

解决方法

如果要根据屏幕大小动态绘制线条,则应在相机预览类中使用以下代码.
@Override  
    protected void onDraw(Canvas canvas)  
    { 
        if(grid){
        //  Find Screen size first  
        displayMetrics metrics = Resources.getSystem().getdisplayMetrics();  
        int screenWidth = metrics.widthPixels;  
        int screenHeight = (int) (metrics.heightPixels*0.9);  

        //  Set paint options  
        paint.setAntiAlias(true);  
        paint.setstrokeWidth(3);  
        paint.setStyle(Paint.Style.stroke);  
        paint.setColor(Color.argb(255,255,255));  

        canvas.drawLine((screenWidth/3)*2,(screenWidth/3)*2,screenHeight,paint);
        canvas.drawLine((screenWidth/3),(screenWidth/3),paint);
        canvas.drawLine(0,(screenHeight/3)*2,screenWidth,(screenHeight/3),paint);
        }
    }

您还需要在相机预览类的构造函数添加以下行:

this.setwillNotDraw(false);

原文地址:https://www.jb51.cc/android/313731.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐