2012-10-01 47 views
37

Mi código funciona como esperaba, solo tengo que deshacerme de este mensaje de advertencia. TWTeetComposeViewController obsoleto en IOS6. ¿Algún reemplazo para este controlador de vista incorporado en ios6?TWTweetComposeViewController obsoleto en IOS6

Aquí está mi código de muestra.

if ([TWTweetComposeViewController canSendTweet]) { 
    // Initialize Tweet Compose View Controller 
    TWTweetComposeViewController *vc = [[TWTweetComposeViewController alloc] init]; 
    // Settin The Initial Text 
    [vc setInitialText:@"This tweet was sent using the new Twitter framework available in iOS 5."]; 
    // Adding an Image 
    UIImage *image = [UIImage imageNamed:@"sample.jpg"]; 
    [vc addImage:image]; 
    // Adding a URL 
    NSURL *url = [NSURL URLWithString:@"http://mobile.tutsplus.com"]; 
    [vc addURL:url]; 
    // Setting a Completing Handler 
    [vc setCompletionHandler:^(TWTweetComposeViewControllerResult result) { 
     [self dismissModalViewControllerAnimated:YES]; 
    }]; 
    // Display Tweet Compose View Controller Modally 
    [self presentViewController:vc animated:YES completion:nil]; 
} else { 
    // Show Alert View When The Application Cannot Send Tweets 
    NSString *message = @"The application cannot send a tweet at the moment. This is because it cannot reach Twitter or you don't have a Twitter account associated with this device."; 
    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Oops" message:message delegate:nil cancelButtonTitle:@"Dismiss" otherButtonTitles:nil]; 
    [alertView show]; 
} 
+0

dónde ves que TWTeetComposeViewController ?? http://developer.apple.com/library/ios/#documentation/Twitter/Reference/TWTweetSheetViewControllerClassRef/Reference/Reference.html – Martin

Respuesta

68

Todavía no algún cambio con el uso de la red social entre iOS 5 iOS 6. &
1. Acerca de la biblioteca: en IOS 6 utilizamos marco social en lugar de Twitter marco.
2. Usamos SLComposeViewController en lugar de TWTweetComposeViewController.
3.Please comparar algunas API con el siguiente código:

if([SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter]) { 

     SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter]; 

     SLComposeViewControllerCompletionHandler myBlock = ^(SLComposeViewControllerResult result){ 
      if (result == SLComposeViewControllerResultCancelled) { 

       NSLog(@"Cancelled"); 

      } else 

      { 
       NSLog(@"Done"); 
      } 

      [controller dismissViewControllerAnimated:YES completion:Nil]; 
     }; 
     controller.completionHandler =myBlock; 

     //Adding the Text to the facebook post value from iOS 
     [controller setInitialText:@"Test Post from mobile.safilsunny.com"]; 

     //Adding the URL to the facebook post value from iOS 

     [controller addURL:[NSURL URLWithString:@"http://www.mobile.safilsunny.com"]]; 

     //Adding the Image to the facebook post value from iOS 

     [controller addImage:[UIImage imageNamed:@"fb.png"]]; 

     [self presentViewController:controller animated:YES completion:Nil]; 

    } 
    else{ 
     NSLog(@"UnAvailable"); 
    } 

Sólo hay pequeñas diferencias, pero son más grandes.

PREFERENCIAS: - Consejos safilsunny: http://www.mobile.safilsunny.com/integrating-facebook-ios-6/

, gracias,

27

Sí, se supone que debes usar el Social Framework en iOS 6. Esto es gracias a la integración de Facebook ahora está presente en iOS. Podrás usar Twitter y Facebook desde allí.