必须将类声明为abstract或实现抽象方法

时间:2016-03-30 20:01:00

标签: opencv4android

我有一个简单的项目,只用org.opencv.android.JavaCameraView显示相机。

我的红色下划线出现以下错误:

类'HelloVisionActivity'必须声明为abstract或在CvCameraViewListener2'中实现抽象方法'onCameraViewStopped()'

上 公共类HelloVisionActivity扩展了Activity实现CvCameraViewListener2

这是我的代码的一部分:

dateFormat.format(new Date(Long.parseLong(jsonParser.getText())));

2 个答案:

答案 0 :(得分:0)

此界面CvCameraViewListener2 有一个名为onCameraViewStopped()的方法......你需要在HelloVisionActivity活动中覆盖它..

实施例

    public class HelloVisionActivity extends Activity implements CvCameraViewListener2 {  

    private static final String  TAG = "Example::HelloVisionWorld::Activity";
    private CameraBridgeViewBase mOpenCvCameraView;

    public Mat onCameraFrame(CvCameraViewFrame inputFrame) {

        return inputFrame.rgba();
    }

@Override
public void onCameraViewStopped(){
//your code here
}

答案 1 :(得分:0)

我也有这个问题,我找到了解决方案。

public class HelloVisionActivity extends Activity implements CvCameraViewListener2 {  


private static final String  TAG = "Example::HelloVisionWorld::Activity";
private CameraBridgeViewBase mOpenCvCameraView;
private Mat mRgba; //Insert this in your code

接下来,插入以下代码,您的问题就会得到解决。

public void onCameraViewStarted(int width, int height) {
    mRgba = new Mat(height, width, CvType.CV_8UC4);
}

@Override
public void onCameraViewStopped(){
    mRgba.release();
}