错误:找不到符号方法 setPreviewDisplay(SurfaceHolder)
Posted
技术标签:
【中文标题】错误:找不到符号方法 setPreviewDisplay(SurfaceHolder)【英文标题】:error: cannot find symbol method setPreviewDisplay(SurfaceHolder) 【发布时间】:2016-07-05 16:33:07 【问题描述】:我在 macbook 上使用 android Studio 按照官方 android 文档创建简单的相机应用程序。但是,当我尝试拨打 camera.setPreviewDisplay(SurfaceHolder)
时,我收到以下错误:
错误:(29, 16) 错误: 找不到符号方法 setPreviewDisplay(SurfaceHolder)
另外我的CameraPreview类如下:
package com.opencv.camerapreview;
import android.content.Context;
import android.graphics.Camera;
import android.graphics.Canvas;
import android.graphics.Rect;
import android.view.Surface;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
public class CameraPreview extends SurfaceView implements SurfaceHolder.Callback
private SurfaceHolder surfaceHolder;
private Camera mCamera;
public CameraPreview(Context context, Camera camera)
super(context);
mCamera=camera;
this.surfaceHolder= getHolder();
this.surfaceHolder.addCallback(this);
surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
@Override
public void surfaceCreated(SurfaceHolder holder)
mCamera.setPreviewDisplay(holder);
@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width, int height)
@Override
public void surfaceDestroyed(SurfaceHolder holder)
看起来这是 Android Studio 中的一些链接问题。任何人都可以阐明为什么会发生这种情况和解决方案。谢谢
【问题讨论】:
【参考方案1】:你已经导入了
import android.graphics.Camera;
你应该导入
import android.hardware.Camera;
甚至
import android.hardware.camera2;
如果您的目标是 API 21 及更高版本。
【讨论】:
以上是关于错误:找不到符号方法 setPreviewDisplay(SurfaceHolder)的主要内容,如果未能解决你的问题,请参考以下文章
错误:找不到符号方法 setPreviewDisplay(SurfaceHolder)
java踩坑-编译错误:FastJson与lombok导致找不到符号:方法getId
当我在此页面中声明方法时,为啥此代码会出现“找不到符号”错误?
错误:找不到符号方法 findViewById(int) [重复]