la méthode setInitialText dans SLComposeViewController iOS 8.3 ne montre pas de texte dans la feuille Facebook

L'extrait de code ci-dessous est le rappel d'un bouton à l'écran. La fiche Facebook apparaît mais ne contient pas de texte. Toutefois, si vous remplacez SLServiceTypeFacebookSLServiceTypeTwitter il montre le texte initial. J'utilise XCode 6.3.1 et iOS 8.3 sur un iPhone 6. Je vous remercie à l'avance.

-(IBAction)facebookButton:(id)sender
{
    if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook])
    {
        NSString* facebookText = @"Awesome App";
        SLComposeViewController *fbPostSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
        [fbPostSheet setInitialText:facebookText];
        [self presentViewController:fbPostSheet animated:YES completion:nil];
    }
    else{
         UIAlertView *alertView = [[UIAlertView alloc]
                              initWithTitle:@"Unable to Connect to Facebook"
                              message:@"Make sure your device has an internet connection and you have your Facebook account setup in the Settings App"
                              delegate:self
                              cancelButtonTitle:@"OK"
                              otherButtonTitles:nil];
        [alertView show];
    }
}        
20
demandé sur Daniel Storm 2015-04-29 15:04:03

2 réponses

si vous supprimez L'application Facebook sur L'appareil, le texte initial apparaîtra.

15
répondu Chrisswong 2015-05-01 11:49:51

Ça fonctionne vraiment si vous définissez le texte à l'intérieur du gestionnaire d'achèvement:

NSString* facebookText = @"Awesome App";
SLComposeViewController *fbPostSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
//[fbPostSheet setInitialText:facebookText];
[self presentViewController:fbPostSheet animated:YES completion:^
{
    [fbPostSheet setInitialText:facebookText];
}];
1
répondu Asif Asif 2016-02-04 10:43:41