iOS 6 の新しいアクションシート機能を UIActivityViewController で実装する - Tosshi Note
で iPhone アプリへのアクティビティ連携の実装方法を書きました。
そのiPad版です。例によって、UIPopoverController を使います。UIActivityViewController をコンテントビューコントローラとしてラップします。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| - (IBAction)actionButtonPressed:(id)sender { NSString *ttl = @"Tosshi Note"; NSURL *url = [NSURL URLWithString:@"http://d.hatena.ne.jp/tilfin/"]; NSArray *activityItems = [NSArray arrayWithObjects:ttl, url, nil]; UIActivityViewController *activityView = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil];
_actionPopover = [[UIPopoverController alloc] initWithContentViewController:actionViewController]; [_actionPopover presentPopoverFromBarButtonItem:_actionButtonItem permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; [activityView release]; }
|
上記の _actionPopover はそのまま present して autorelease するとメモリアクセス不正で落ちるので、dismiss以降にリリースをかけましょう。
tilfin
freelance software engineer