iOS 6 の新しいアクションシート機能を UIActivityViewController で実装する - Tosshi Note
で iPhone アプリへのアクティビティ連携の実装方法を書きました。
そのiPad版です。例によって、UIPopoverController を使います。UIActivityViewController をコンテントビューコントローラとしてラップします。
f:id:tilfin:20121024022338p:image

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以降にリリースをかけましょう。