Domanda

Sto cercando di mostrare un'UIImagePickerController non appena uno dei miei carichi View Controller. Mi piacerebbe questo senza che l'utente debba premere un pulsante in modo da calpestato il metodo viewDidLoad come segue:

- (void)viewDidLoad {
    [super viewDidLoad];

    UIImagePickerController *imagePickerController = [[UIImagePickerController alloc] init];
    imagePickerController.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
    imagePickerController.allowsImageEditing = YES;
    imagePickerController.delegate = self;    
    [self presentModalViewController:imagePickerController animated:YES];
    [imagePickerController release];
}

Questa compilato ed eseguito, ma quando il controller della vista viene caricato il selettore immagine non viene visualizzata. Questo codice funziona bene se io attribuisco ad un evento di un pulsante, per esempio. Tutte le idee?

Grazie.

È stato utile?

Soluzione

Ho avuto lo stesso problema, ma risolto. Provare a utilizzare

-(void) awakeFromNib {

}

Si caricherà solo dopo che tutto carichi altro.

Altri suggerimenti

Prova a mettere il codice in

-(void)viewDidAppear

Che anche eseguito ogni volta la vista appare sullo schermo anche se (anche quando esso appare dopo aver eliminato l'UIImagePicker), quindi potrebbe essere necessario aggiungere un valore booleano per farlo solo accadere la prima volta che si vede, o quando si lo vogliono (cioè non dopo respingendo una vista modale).

Sembra che viewDidLoad è troppo presto per usare presentModalViewController: animato :. Mi piacerebbe sugget biforcarsi fuori un timer one-shot di chiamare il metodo dal prossimo ciclo di esecuzione di iterazione:

[NSTimer
 scheduledTimerWithTimeInterval:0
 target:self
 selector:@selector(onLoadTimer:)
 userInfo:nil
 repeats:NO];

aggiungere il seguente metodo:

- (void)onLoadTimer:(id)unused
{
    [self presentModalViewController:imagePickerController animated:YES];
    [imagePickerController release];
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top