История UIImagePickerController: как получить изображение для вставки в твит? - PullRequest
1 голос
/ 27 января 2012

Я должен добавить изображение в твит. Я попробовал этот код, и только сборщик показывает. Когда я нажимаю на изображение, оно не захватывает ... Вот код:

- (IBAction)sendImageTweet:(id)sender {
    UIImagePickerController *picker = [[UIImagePickerController alloc] init];
    picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
    picker.delegate = self;
    picker.allowsEditing = NO;
    [self presentModalViewController:picker animated:YES];
}

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    TWTweetComposeViewController *tweetViewController = [[TWTweetComposeViewController alloc] init];
    UIImage *image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
    [self dismissModalViewControllerAnimated:YES];
    [tweetViewController addImage:(UIImage *)image];
    [self presentModalViewController:tweetViewController animated:YES];
}

Спасибо, и извините за мой английский ...

Ответы [ 3 ]

1 голос
/ 27 января 2012
UIImage * image = (UIImage *) [info valueForKey:UIImagePickerControllerOriginalImage];
1 голос
/ 27 января 2012

Я думаю, что проблема в том, что вы закрываете viewController и представляете его одновременно. Я сделал это

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
[self dismissModalViewControllerAnimated:YES];
UIImage *image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
[self performSelector: @selector(showTweetwithPhoto:) withObject: image afterDelay: 0.5];

}

и все заработало отлично

-(void) showTweetwithPhoto:(UIImage*)image {
    TWTweetComposeViewController *tweetViewController = [[TWTweetComposeViewController alloc] init];
    [tweetViewController addImage:image];
    [self presentModalViewController:tweetViewController animated:YES];
}
1 голос
/ 27 января 2012

Попробуйте привести данные изображения (возвращаемые UIImagePickerController) к объекту UIImage, как показано ниже. (Я изменил 2-ю строку вашего кода).

UIImage *image = (UIImage*)[info objectForKey:@"UIImagePickerControllerOriginalImage"];
...