可resize的视图。使用者触摸

使用用户触摸input更改视图大小

这是我的问题..很好,现在已经很老了。接受他的回答也是我的职责,因为他帮了我很多

这是继续 在这里输入图像说明

所以总结一下:

1)我想在我的应用程序可resize的视图相机..我去这个混帐https://github.com/spoletto/SPUserResizableView ..下载它..实现它。

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)在我的委托方法

 - (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有点疯狂了..一旦它开始编辑,它就不会触及视图的顶部边缘。对于右下angular的这种粘贴不会完全填满视图。

委托中的logging日志和用户可resize的logging相同的值。

任何帮助?

只需添加:

 [captureVideoPreviewLayer setNeedsLayout]; [captureVideoPreviewLayer setNeedsDisplay]; 

到你的委托方法的结尾,以通知UIKit界限已经改变,并且图层的内容需要更新。