2016-05-19 4 views
2

私のカスタムShareViewControllerが表示されないようです。私は、SLComposeViewControllerではなく、UIViewControllerを継承してストーリーボードに追加しましたが、共有する画像を選択すると、ShareViewControllerは表示されません。ここに私の全体のコードは次のとおりです。iOS Share Extensionが私のカスタムShareViewControllerを表示しない

ヘッダファイル:

#import <UIKit/UIKit.h> 
#import <Social/Social.h> 

@interface ShareViewController : UIViewController 

@end 

実装ファイル:

@implementation ShareViewController 

- (void)viewDidLoad{ 
    [super viewDidLoad]; 
    self.view.alpha = 0; 

} 

- (void)viewWillAppear:(BOOL)animated 
{ 
    [super viewWillAppear:animated]; 

    self.view.transform = CGAffineTransformMakeTranslation(0, self.view.frame.size.height); 
    [UIView animateWithDuration:0.25 animations:^ 
    { 
     self.view.transform = CGAffineTransformIdentity; 
    }]; 
} 

- (void)dismiss 
{ 
    [UIView animateWithDuration:0.20 animations:^ 
    { 
     self.view.transform = CGAffineTransformMakeTranslation(0, self.view.frame.size.height); 
    } 
        completion:^(BOOL finished) 
    { 
     [self.extensionContext completeRequestReturningItems:nil completionHandler:nil]; 
    }]; 
} 

-(void)viewDidAppear:(BOOL)animated { 

    [super viewDidAppear:YES]; 

    for (NSItemProvider* itemProvider in ((NSExtensionItem*)self.extensionContext.inputItems[0]).attachments) 
    { 
     if([itemProvider hasItemConformingToTypeIdentifier:@"public.image"]) 
     { 
      [itemProvider loadItemForTypeIdentifier:@"public.image" options:nil completionHandler: 
      ^(id<NSSecureCoding> item, NSError *error) 
      { 
       UIImage *sharedImage = nil; 
       if([(NSObject*)item isKindOfClass:[NSURL class]]) 
       { 
        sharedImage = [UIImage imageWithData:[NSData dataWithContentsOfURL:(NSURL*)item]]; 


       } 
       if([(NSObject*)item isKindOfClass:[UIImage class]]) 
       { 
        sharedImage = (UIImage*)item; 
       } 
      }]; 
     } 
    } 
} 

@end 

ブレークポイントさえイメージをつかむが、カスタムビューコントローラではありません、ランタイムがコードを実行していることを示しています何らかの理由で提示されたどんな助け?

答えて

3

それはとても愚かで、それを理解するのはしばらく時間がかかりましたが、何らかの理由で、デフォルトでCustom ShareViewControllerビューの背景色が[UIColor clearColor]に設定されています。 Appleの非常に愚かな:)、しかし、私はこの場合を解決しました

+1

私は思う:self.view.alpha = 0; – Claudio

+1

はい私はいくつかの男からいくつかのコードをコピーし、xDに気付かなかった – miljan

+0

:Dはしばしば私の問題です – Claudio