ios - Make a UIView display the camera view using UIImagePickerController -


i'm trying display image camera sees own custom view. not want use apple's own overlay property uiimagepickercontroller: cameraoverlayview.

i don't want overlay, display in particular view. way i've been able creating subview in uiview, doing doesn't allow me use of own custom buttons i've made on uiview . code far is:

uiimagepickercontroller *imagepickercontroller = [[uiimagepickercontroller alloc] init];  [imagepickercontroller setsourcetype:uiimagepickercontrollersourcetypecamera]; [imagepickercontroller setshowscameracontrols:no]; [imagepickercontroller setediting:no]; [imagepickercontroller setnavigationbarhidden:yes];  [self.videopreviewview addsubview:[imagepickercontroller view]]; [imagepickercontroller viewwillappear:yes]; 

where videopreviewview outlet uiview!

any suggestions? thanks!

i have not tried way myself, wanted create custom camera view. might not looking for, alternative. created custom uiview .xib file.

in .m file call appropriate delegate methods viewcontroller instantiated imagepicker. in viewcontroller call appropriate methods takepicture.

this way can make overlay way xib file. can instantiate image picker

    falkcameraview.h :          @protocol cameraviewdelegate <nsobject>          - (void)camerapressed;          - (void)buttonpressed;         //etc           @end          @interface falkcameraview : uiview          @property (nonatomic, assign) nsobject<cameraviewdelegate> *delegate;          //camera button pressed- notifies cameraviewdelegate         - (ibaction)camerapressed:(id)sender;         //button pressed - notifies cameraviewdelegate         -(ibaction)buttonpressed:(id)sender;           @end      falkcameraview.m:      @implementation falkcameraview      @synthesize delegate;      - (ibaction)camerapressed:(id)sender{         [delegate camerapressed];     }      -(ibaction)buttonnpressed:(id)sender{         [delegate buttonpressed];     }       @end       falkcameraviewcontroller.h:      @interface falkcameraviewcontroller : uiviewcontroller <uiimagepickercontrollerdelegate, cameraviewdelegate>      - (void)camerapressed;      - (void)buttonpressed;      @end       falkcameraviewcontroller.m:      @interface falkcameraviewcontroller          @property (strong,nonatomic) uiimagepickercontroller *imagepicker;     @end      @implementation falkcameraviewcontroller     @synthesise imagepicker;      -(void)setupcamera{         if ([uiimagepickercontroller issourcetypeavailable:                  uiimagepickercontrollersourcetypecamera]){                 imagepicker = [[uiimagepickercontroller alloc] init];                 imagepicker.delegate = self;                 imagepicker.sourcetype =                 uiimagepickercontrollersourcetypecamera;                 imagepicker.showscameracontrols = no;                 imagepicker.allowsediting = no;   imagepicker.mediatypes = @[(nsstring *) kuttypeimage];                    nsstring *nibname = @"falkcameraview";                  nsarray *nibs = [[nsbundle mainbundle] loadnibnamed:nibname                                                               owner:nil                                                             options:nil];                 if([nibs count]){                     id nib = [nibs objectatindex:0];                     if([nib iskindofclass:[falkcameraview class]]){                         falkcameraview *view = (falkcameraview*)nib;                         view.delegate = self;                         imagepicker.cameraoverlayview = view;                     }                 }                  [self presentviewcontroller:imagepicker                                    animated:no completion:nil];             }     }            -(void)camerapressed:(id)sender{                [imagepicker takepicture];         }      @end 

Comments

Popular posts from this blog

c# - Operator '==' incompatible with operand types 'Guid' and 'Guid' using DynamicExpression.ParseLambda<T, bool> -