2010-09-09 17 views
5

Ho un controller di segmento su una delle mie viste e ora sul 0 ° indice del controller di segmento Voglio aggiungere UIImagePickerController (per mostrare la vista della telecamera all'utente) aggiungendo come vista secondaria e non da ModalViewController. In questo momento la vista viene caricata ma non mostra alcuna vista della telecamera. Sono in grado di mostrare la vista della telecamera da PresentModalViewController e passare il suo oggetto.Come aggiungere UIImagePickerController come vista secondaria invece di Modal View

Ecco il code--

if(segmentedControl.selectedSegmentIndex==0) 

{ 

UIImagePickerController *cameraView = [[UIImagePickerController alloc] init]; 

cameraView.sourceType = UIImagePickerControllerSourceTypeCamera; 

cameraView.showsCameraControls = NO; 

//[self presentModalViewController:cameraView animated:YES]; //Working 

[self.view addSubview:cameraView.view]; // Not Working 

} 

risposta

11
[self.view addSubview:picker.view]; 
[picker viewWillAppear:YES]; // trickery to make it show 
[picker viewDidAppear:YES]; 

Si ottiene una barra bianca in alto, come effetto collaterale in quanto UIImagePickerController non è destinato ad essere utilizzato con esso.

0

Si dovrebbe evitare di farlo, non è raccomandato e potrebbe portare a effetti collaterali indesiderati.

Come indicato sulla documentazione (https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIImagePickerController_Class) non è possibile aggiungerlo come una visualizzazione secondaria, si dovrebbe presentare come un nuovo controller

Ecco un pezzo del doc:

Su iPhone o iPod touch , fai questo modally (a schermo intero) chiamando il presentViewController: animato: completamento: metodo del controller di visualizzazione attivo attualmente , passando il controller di selezione immagine configurato come nuovo controller di visualizzazione.

Spero che questo aiuti!

Problemi correlati