2011-03-10 4 views
0

안녕하세요 다음 코드는 카메라를 올려 놓은 다음 카메라보기에 오버레이를 추가하는 코드입니다. 카메라가 나타나기 전에 애니메이션이 있습니다. 애니메이션을 제거하고 오버레이보기로 즉시 이동할 수있는 방법이 있습니까?iphone에서 이미지 선택기 기본 애니메이션 사용 안 함

//create an overlay view instance 
    OverlayView *overlay = [[OverlayView alloc] 
          initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGTH)]; 

    //create a new image picker instance 
    UIImagePickerController *picker = 
    [[UIImagePickerController alloc] init]; 
    //set source to video! 
    picker.sourceType = UIImagePickerControllerSourceTypeCamera; 
    //[picker startVideoCapture]; 

    //picker. = 1; 
    //hide all controls 
    picker.showsCameraControls = NO; 
    picker.navigationBarHidden = YES; 
    picker.toolbarHidden = YES; 
    //make the video preview full size 
    picker.wantsFullScreenLayout = YES; 
    picker.cameraViewTransform = 
    CGAffineTransformScale(picker.cameraViewTransform, 
          CAMERA_TRANSFORM_X, 
          CAMERA_TRANSFORM_Y); 
    //set our custom overlay view 
    picker.cameraOverlayView = overlay; 
    picker.allowsEditing = NO; 

    //show picker 
    //[self.view insertSubview:picker.view atIndex:0]; 
    [self presentModalViewController:picker animated:NO]; 
    [self.view bringSubviewToFront:overlay]; 

답변

0
+0

내가보기 hierachy에 PLCameraView를 찾을 수 있습니다. 여기 제가 사용했던 방법이 있습니다. # import에 "MyImagePicker.h" @implementation의 MyImagePicker - (무효) notificationCallback (NSNotification *) 통지 { \t 경우 {// \t NSLog (([알림 이름] isEqualToString "UINavigationControllerDidShowViewControllerNotification"@]) @ " % @ ", self.view.subviews); \t // UIView * view1 = [self.view.subviews objectAtIndex : 0]; \t \t // [view1 removeFromSuperview]; \t \t (UIView * view in self.view.subviews) { \t \t \t NSLog (@ "% @"보기); \t \t \t \t \t } \t \t [NSNotificationCenter defaultCenter] removeObserver : 자기]; \t} } – jimmy