2012-04-16 14 views
9

Sto creando un'app per iPhone che utilizza UIImagePickerController per consentire agli utenti di selezionare un'immagine dalla libreria di foto.Il simulatore iPad non funziona con UIImagePickerController in un'app per iPhone

Il selettore mi permette di ottenere l'immagine dalla libreria fotografica con successo su:

  • iPhone sumulator
  • vero iPhone in esecuzione 5.0.1
  • iPad reale esecuzione 5.0.1
  • vero e proprio iPad esecuzione 5,1
  • iPad simulatore v4.3

Ma il selettore non riesce a ottenere l'immagine se provo questa applicazione sul:

  • iPad simulatore v5.0
  • iPad simulatore v5.1

Su questi ambienti di test 2, il selettore di immagini appare con successo. Quando tocco l'immagine di cui ho bisogno, non mi dà nulla da "[info objectForKey: UIImagePickerControllerOriginalImage]" tramite il metodo "- (void) imagePickerController: (Selettore UIImagePickerController *) didFinishPickingMediaWithInfo: (NSDictionary *) info "

Il "info" dizionario è proprio così:

{ 
    UIImagePickerControllerMediaType = "public.image"; 
    UIImagePickerControllerReferenceURL = "assets-library://asset/asset.PNG?id=7632C58F-AF74-4EEB-AF17-891E35949CBA&ext=PNG"; 
} 

Dove come "info" è come questo sui precedenti ambienti di 5 prove:

{ 
    UIImagePickerControllerMediaType = "public.image"; 
    UIImagePickerControllerOriginalImage = "<UIImage: 0x6bb7810>"; 
    UIImagePickerControllerReferenceURL = "assets-library://asset/asset.PNG?id=7632C58F-AF74-4EEB-AF17-891E35949CBA&ext=PNG"; 
} 

Si vede che UIImagePickerControllerOriginalImage è mancante. Non sono sicuro se questo sia solo io?

Nota: io sto usando Xcode 4.3.2 con iOS 5 SDK

Nota 2: non sto usando AssetsLibrary quadro per ottenere l'immagine.

Nota 3 (aggiunto 2/ago/2012): Ho eseguito l'aggiornamento a Xcode 4.4 con installato Mountain Lion. Lo stesso problema esiste ancora. Ma ora viene visualizzato un nuovo messaggio di errore se lo eseguo in iPad simulator v5.0 (il messaggio di errore non viene visualizzato se lo eseguo su iPad Simulator v5.1). Il messaggio di errore dice: Servizio denominato 'com.apple.PersistentURLTranslator.Gatekeeper' non trovato. assetsd è inattivo o mal configurato. Le cose non funzioneranno nel modo in cui ti aspetti che lo facciano.

nota 4 (aggiungere 25/Nov/2012): Usando Xcode 4.5.2, questo problema esiste ancora in iPad simulatore di 5.0, 5.1, e 6.0

nota 5 (aggiunto 6/Mar/2012): Usando Xcode 4.6, questo problema esiste ancora nel simulatore di iPad tutte le versioni.

+0

Ciao Wayne, io ho lo stesso problema nella mia app, se si trova una soluzione, allora si prega di condividere – iBhavik

+0

Spiacente i-bhavik, nessuna soluzione ancora. (Ho appena aggiunto la nota 5) –

+0

Per la soluzione temporanea ho dato una risposta a questo. – iBhavik

risposta

0

provare questo in un dispositivo reale

 - (IBAction)BrowseImage:(id)sender { 

    if ([UIImagePickerController isSourceTypeAvailable: 
    UIImagePickerControllerSourceTypeSavedPhotosAlbum]) 
{ 
    UIImagePickerController *imagePicker = 
    [[UIImagePickerController alloc] init]; 
    imagePicker.delegate = self; 
    imagePicker.sourceType = 
    UIImagePickerControllerSourceTypePhotoLibrary; 
    imagePicker.mediaTypes = [NSArray arrayWithObjects: 
           (NSString *) kUTTypeImage, 
           nil]; 
    imagePicker.allowsEditing = NO; 
    [self presentModalViewController:imagePicker animated:YES]; 
    //newMedia = NO; 
} 


-(void)imagePickerControllerDidCancel:(UIImagePickerController *)picker 
    { 

[self dismissModalViewControllerAnimated:YES]; 


} 
+0

grazie, potresti mostrare cosa hai inserito "- (void) imagePickerController: (UIImagePickerController *) picker didFinishPickingMediaWithInfo: (NSDictionary *) info" come questo è la mia domanda. –

0

non so il problema di che, ma in opzione temporanea,

imagePicker.allowsEditing = YES;

Questo vi darà immagine che per UIImagePickerControllerOriginalImage,

So che la sua non è il modo, ma ...

+0

Siamo spiacenti, questo non funziona su simulatore iPad (che è di che cosa si tratta) :( – ripegooseberry

Problemi correlati