iphone - 使用用户触摸可调整大小的 View

标签 iphone objective-c ios xcode view

这是在继续 from this question .

enter image description here

总结一下:

1) 我想在我的应用程序中安装可调整大小的摄像头。我去了this repo , 下载并实现。

2)

AVCaptureVideoPreviewLayer *newCaptureVideoPreviewLayer =
  [[AVCaptureVideoPreviewLayer alloc] initWithSession:
    [[self captureManager] session]];
UIView *view = [self videoPreviewView];
CALayer *viewLayer = [view layer];
[viewLayer setMasksToBounds:YES];

CGRect frame = CGRectMake(50, 50, 200, 150);
userResizableView = [[SPUserResizableView alloc] initWithFrame:frame];
// CALayer *viewLayer = [userResizableView layer];
userResizableView.delegate =self;
[view setBackgroundColor:[UIColor clearColor]];
userResizableView.contentView =view;
[self.view addSubview:userResizableView];
// [contentView release]; 
[userResizableView release];
CGRect bounds = [view bounds];

[newCaptureVideoPreviewLayer setFrame:bounds];

3) 在我的委托(delegate)方法中

- (void)userResizableViewDidEndEditing:(SPUserResizableView *)userResizableView
{
    CGRect ResizableViewFrame = self.userResizableView.frame;
    NSLog(@" %f--- %f--- %f--- %f ---",userResizableView.frame.origin.x,userResizableView.frame.origin.y,userResizableView.frame.size.width,userResizableView.frame.size.height);
    captureVideoPreviewLayer.frame = ResizableViewFrame;
    NSLog(@" %f--- %f--- %f--- %f ---",captureVideoPreviewLayer.frame.origin.x,captureVideoPreviewLayer.frame.origin.y,captureVideoPreviewLayer.frame.size.width,captureVideoPreviewLayer.frame.size.height);
}

4) 现在我的 avcapturePreview 有点疯狂了;一旦开始编辑,它就不会触及 View 的上边缘。它有点粘在右下角,但从未完全填满 View 。

委托(delegate)中的 slog 为预览和用户可调整大小的 View 记录相等的值。

最佳答案

只需添加:

[captureVideoPreviewLayer setNeedsLayout];
[captureVideoPreviewLayer setNeedsDisplay];

到您的委托(delegate)方法的末尾,向 UIKit 发出边界已更改且图层内容需要更新的信号。

关于iphone - 使用用户触摸可调整大小的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8910965/

相关文章:

iphone - 堆栈跟踪错误聚合软件

iphone - -(bool) 不返回

ios - 如何从 Xcode 8 中的 Assets.xcassets 添加不同屏幕尺寸的图像?

ios - 崩溃 firebase Swift

iOS + Tesseract Ocr + OpenCV

ios - 接受电子邮件地址和 10 位电话号码的正则表达式

iphone - iOS7 与 iPad 上 App 的兼容性

Objective-C 异步回调

ios - 添加/删除对象到可变数组

objective-c - 从plist文件读取字典的奇怪行为