徹底的に困惑。ビュー コントローラを含むアクション シートを開き、ビュー コントローラのボタンをクリックして SLComposeViewController を起動すると、エラーが発生します。
これは、View Controller を含むアクション シートを初期化する方法です。
UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:nil
delegate:self
cancelButtonTitle:nil
destructiveButtonTitle:nil
otherButtonTitles:@"1",@"2",nil];
[actionSheet setBounds:CGRectMake(0,0, 320, 285)];
ExportVC*innerView = [[ExportVC alloc] initWithNibName:@"ExportVC" bundle:nil];
innerView.view.frame = actionSheet.bounds;
[actionSheet addSubview:innerView.view];
[actionSheet showFromTabBar:self.tabBarController.tabBar];
これは ExportVC.h ファイルです。
#import <UIKit/UIKit.h>
#import <Social/Social.h>
@interface ExportVC : UIViewController{
}
- (IBAction)tweet:(id)sender;
@end
IBAction が SLComposeViewController を起動する ExportVC.m ファイルは次のとおりです。
#import "ExportVC.h"
#import <Social/Social.h>
@interface ExportVC ()
@end
@implementation ExportVC
-(IBAction)tweet:(id)sender{
NSLog(@"button works");
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter])
{
SLComposeViewController* tweetSheet = [SLComposeViewController
composeViewControllerForServiceType:SLServiceTypeTwitter];
[tweetSheet setInitialText:@"Hi"];
[self presentViewController:tweetSheet animated:YES completion:nil];
}
}
接続は問題ありません。ExportVC の viewdidload には何もありません。ただし、「つぶやき」アクションに添付されたボタンをクリックするたびに、EXC Bad Access エラーが発生します。どんな助けでも大歓迎です。