0

Facebook ではなく、ファイルから画像を投稿するにはどうすればよいですか? これはうまくいきます:

SLComposeViewController *controllerSLC = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
[controllerSLC setInitialText:@" iPhone app"];
[controllerSLC addURL:[NSURL URLWithString:@"http://www.example.com"]];

[controllerSLC addImage:[UIImage imageNamed:@"icon.png"]];

ただし、次から画像を送信しようとしています:

 self.imageView.image = [self.photo objectForKey:photoPictureKey];
4

2 に答える 2

1

この[self.photo objectForKey:photoPictureKey]コードが画像のパスを返す場合は、imageWithContentsOfFile である UIImage クラス メソッドを使用できます。

UIImage *fbImage = [UIImage imageWithContentsOfFile:[self.photo  objectForKey:photoPictureKey]];

次に、クラス SLComposeViewController のインスタンスに追加する前に、fbImage が nil でないことを確認します。

 if(fbImage!=nil){
  [controllerSLC addImage: image];
 }else{
  NSLog('image is nil'); 
 }

この「[self.photo objectForKey:photoPictureKey]」コードが UIImage インスタンスを返す場合は、次のようにします。

 UIImage *fbImage = [self.photo objectForKey:photoPictureKey];
 if(fbImage!=nil){
  [controllerSLC addImage: fbImage];
 }else{
  NSLog('image is nil'); 
 }

次の方法で fbImage が null かどうかを確認することもできます。

if(fbImage!=nil && !([fbImage isKindOfClass:[NSNull class]])){
    [controllerSLC addImage: fbImage];

}

于 2013-05-14T10:09:40.927 に答える