可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界限已经改变,并且图层的内容需要更新。