问题标签 [camera-overlay]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1146 浏览

uiimagepickercontroller - 如何创建识别滑动手势的相机覆盖视图?

我正在尝试创建一个可以识别滑动手势以推送到其他视图的相机叠加层。

我想知道我是否仍然可以使用 UIImagePicker 或者我是否必须使用 AVCaptureSessionManager。

另外我更喜欢在故事板中创建覆盖视图有没有办法做到这一点?我可以在情节提要控制器中选择一个视图作为相机叠加层,然后简单地在视图上显示 UIImagePicker 是否加载?

0 投票
1 回答
905 浏览

ios - 相机覆盖 .xib 文件不显示按钮

我正在尝试创建一个简单的相机应用程序,其覆盖视图显示两个按钮和一个手势识别器。

目前,我有一个带有 .xib 文件的“OverlayViewController”,其中包含一个带有两个按钮和一个手势识别器的 UIView。

在我通过 UIImagePicker 在 vi​​ewDidLoad 上显示相机的 CameraViewController 中,我尝试将此选择器分配给我的叠加层,但到目前为止我没有得到叠加层中的任何按钮......

OverlayViewController.h

OverlayViewController.m - 几乎是空的(我需要在这里初始化 UIButtons 吗??)

CameraViewController.h

CameraViewController.m

}

我也想知道哪个控制器应该是这些隐形按钮的代表......

我在这里先向您的帮助表示感谢!

0 投票
2 回答
3579 浏览

ios - UIImagePicker cameraOverlayView 出现在 Retake 屏幕上

我正在努力解决一个问题。我正在捕捉视频,并且我将一个带有 UIImage 的 UIImageView 作为 UIImagePicker CameraOverLay 放入其中。因此,当用户启动相机以捕捉视频时,他可以看到相机上的叠加层。当用户停止捕获并被移动到 UIImagePicker 的“取消或重拍”屏幕时,cameraOverlayView 仍然可见。

关于如何不在“重拍或取消”屏幕中显示叠加层的任何想法?

0 投票
1 回答
1146 浏览

ios - 使用 CGRect 裁剪图像

我一直在努力做到这一点。我有一个相机覆盖。我想让我的最终图像成为可从内置相机查看的图像的一部分。我所做的是使 CGRect 的尺寸等于相机中的正方形。然后我尝试使用此功能对其进行裁剪。

我这样称呼它

我得到的是方向错误的劣质图像。

::编辑::

通过 Nitin 的回答,我可以裁剪屏幕的正确部分,但问题是它裁剪了相机视图之后的视图,即“确认视图”。我怀疑这是因为 Nitin 的代码使用

UIImage *screenshot = UIGraphicsGetImageFromCurrentImageContext();

并且因为所有这一切都发生在 ViewController 中,因为 Confirmation View 的 View Controller 是执行此代码的 Controller。我将尝试用一张小地图来解释这一点

CameraOverlay.xib(它使用这个xib来创建一个覆盖)<===== CameraOverlayViewController ---------> ConfirmationView

因此,当第一次调用 ViewController(标签栏上的按钮)时,它会打开相机(UIImagePickerController),并在其上覆盖。然后,一旦用户单击图像,图像就会显示在 ConfirmationView 上。

我认为正在发生的是当 UIGraphicsBeginImageContextWithOptions(self.view.frame.size, YES, 1.0); [self.view.layer renderInContext:UIGraphicsGetCurrentContext()]; UIImage *screenshot = UIGraphicsGetImageFromCurrentImageContext(); 这些行被执行时,当时的视图是 ConfirmationView。

注意:我调用函数

(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info方法。

0 投票
0 回答
1261 浏览

ios - 相机叠加视图 - UIButton 不起作用

我为带有两个按钮、一个拍照按钮和一个切换相机按钮的相机创建了一个叠加视图。拍照应该拍照,切换摄像头应该改变后视和前视摄像头。这两件事都不起作用。几个月前我做了一个这样的应用程序,一切正常。我有相同的代码,我不知道为什么按钮不再起作用。任何输入表示赞赏!如果需要代码,我会很乐意把它放上来!

这是一些代码:

这些是连接的按钮:

我已将自定义 .xib 视图连接到@property (nonatomic) IBOutlet UIView *overlay

0 投票
1 回答
916 浏览

ios - 将 cameraOverlayView 约束到屏幕中心

我在我正在创建的 iPad 应用程序中使用 zBAR QR 阅读器,并在ZBarReaderViewController. 我已经设法将覆盖层置于中心,但是当设备旋转时,覆盖层显然会偏离中心。

我已经搜索了有关以编程方式限制视图的方法,但没有任何建议有效。我已经尝试了所有可能的组合,UIViewAutoResizingMask并且我已经尝试了使用该[NSLayoutConstraint constraintWithItem:attribute:relatedBy:toItem:attribute:multiplier:constant:]方法的大量不同设置。

这是我的代码:

设置它的正确方法是什么,这样我的叠加层将始终位于屏幕中央,无论方向如何变化?任何帮助都会很棒,谢谢。

0 投票
2 回答
1294 浏览

ios - iphone 5 - 在屏幕上居中 UIImagePickerController

我使用以下代码为相机创建了一个自定义叠加层:

它在 iphone 4 上运行良好(因为摄像头覆盖了整个屏幕),但在 iphone 5 上,摄像头位于屏幕顶部,底部留下黑色方块。由于我无法更改相机大小,至少我想将其置于屏幕中间,然后将 UIViews 添加为边距(非常类似于苹果的相机胶卷应用程序,其中相机不在屏幕顶部,并且上面和下面都有控件)。

有人可以告诉我在这种情况下如何控制相机框架?此外,由于边距仅用于更好的可视化,我可能不想在 iphone 4 或 ipad 屏幕上显示它们。

提前致谢 !

0 投票
2 回答
1204 浏览

android - 如何使用表面视图删除标题栏以在android中添加相机覆盖

我按照链接创建带有图像的相机叠加层。但我的问题是我无法在onCreate()方法中使用以下代码删除标题栏:

它可能导致 onCreate 方法中的以下代码:

现在,我能做些什么以及为什么会这样?谁能解释一下??

0 投票
3 回答
18919 浏览

ios - 将 cameraOverlayView 与 UIImagePickerController 一起使用

我有一个使用UIImagePickerController拍照的应用程序。问题是我只希望相机选项可用,并且我知道我需要隐藏标准控件:

并使用 acameraOverlayView来提供我自己的控件。我已经看过 Apple 的PhotoPicker项目,我最初的问题是如何将Overlay对象放到我的故事板上?我在图书馆找不到这样的对象。

0 投票
2 回答
7149 浏览

ios - 如何创建一个cameraOverlayView

我真的很难弄清楚如何做到这一点。我有一个UIImagePickerController工作正常,但我想创建自己的CameraOverlayView,以便我可以自定义按钮。我似乎无法弄清楚如何首先创建叠加层。我已经尝试了很多教程,并且已经达到了以下内容,但是还差得很远。谁能给我指出一个简单易懂的说明?

  • 我创建了一个UIImagePickerController适用于标准控件的
  • 对于叠加层,我UIViewController在情节提要上创建了一个新的并将其链接到一个名为的新类ObViewControllerCameraOverlay
  • startCameraControllerFromViewController我使用以下方法隐藏标准控件

    cameraUI.showsCameraControls=否;

  • 然后显示cameraOverlay(不编译)

    obViewControllerCameraOverlay *overlay = [[obViewControllerCameraOverlay alloc]; cameraUI.cameraOverlayView = 覆盖;

我知道我做错了,但我不知道如何做到这一点。我也看过 Apple 的 PhotoPicker,但我就是不明白。

更新:

我现在在哪里 - 谁能告诉我这是否是正确的过程(我意识到需要对帧大小进行排序并且需要以某种方式添加自定义按钮):

“拍照”所在的 .m 文件UIButton