【问题标题】:No enclosing instance of type Camera is accessible无法访问 Camera 类型的封闭实例
【发布时间】:2013-04-11 06:34:56
【问题描述】:

大家好,我正在开发一个需要使用相机的应用程序,但我的代码遇到了这个问题:

没有可访问类型为 Camera 的封闭实例。必须在 "this.preSize_ = new Camera(0,0); 有什么帮助吗?还是建议?

private void setupCamera()
  {
    this.camera_ = Camera.open();
    Camera localCamera = this.camera_;
    localCamera.getClass();
    this.preSize_ =  new Camera.Size(0,0);
    Camera.Parameters localParameters = this.camera_.getParameters();
    Iterator<Camera.Size> localIterator1 = localParameters.getSupportedPreviewSizes().iterator();
    Camera.Size localSize2;
    do
    {
      if (!localIterator1.hasNext())
        break;
      localSize2 = (Camera.Size)localIterator1.next();
      this.preSize_ = localSize2;
    }
    while ((localSize2.width != this.previewWidth) && (localSize2.height != this.previewHeight));
    localParameters.setPreviewSize(this.preSize_.width, this.preSize_.height);
    Iterator<Camera.Size> localIterator2 = localParameters.getSupportedPictureSizes().iterator();
    Camera.Size localSize1;
    do
    {
      if (!localIterator2.hasNext())
        break;
      localSize1 = (Camera.Size)localIterator2.next();
      this.procSize_ = localSize1;
    }
    while ((localSize1.width != this.processWidth) && (localSize1.height != this.processHeight));
    localParameters.setPictureSize(this.procSize_.width, this.procSize_.height);
    this.camera_.setParameters(localParameters);
    this.camera_.setDisplayOrientation(90);
    try
    {
      this.camera_.setPreviewDisplay(this.surfaceHolder_);
      this.camera_.startPreview();
      return;
    }
    catch (Exception localException)
    {
      while (true)
        localException.printStackTrace();
    }
  }

【问题讨论】:

标签: java android camera


【解决方案1】:

Size 类是Camera 的一个非静态类。因此,您只能从 Camera 类的封闭实例创建它。像这样:

this.preSize_ = localCamera.new Size(0,0);

【讨论】:

  • 但我收到一个错误提示:localCamera 无法解析为类型
  • 对我来说也一样吗?找到任何解决方案了吗?
  • 相机 localCamera = Camera.open();
  • @Sonhja 因为 Size 类从不使用相机的封闭实例,所以它看起来像一个错误。自 API 21 btw 起,此 API 已被弃用。
猜你喜欢
  • 2011-12-15
  • 2016-11-20
  • 2012-06-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-24
  • 2013-02-17
相关资源
最近更新 更多