- (IBAction) tapAction:(id)sender
{
// 表示するViewController
SelectViewController *svc = [[[SelectViewController alloc] init] autorelease];
// Popoverの領域の大きさを設定
svc.contentSizeForViewInPopover = svc.view.frame.size;
svc.delegate = self;
// Popoverのインスタンス生成
UIPopoverController *popover = [[UIPopoverController alloc]
initWithContentViewController: svc];
// Popoverを表示する
[popover presentPopoverFromBarButtonItem:sender
permittedArrowDirections:UIPopoverArrowDirectionAny
animated:YES];
}
Popoverの表示領域を設定しない場合は、画面いっぱいにViewが表示されます。
ここでは svc.view.frame.size を指定していますがこうしておくとViewのサイズに合わせて表示されます。
独自のViewController(上ではSelectViewController)を使用する場合は予めimportしておく必要があります。
他にも使い方としてはカメラロールの表示も同じやり方で出来ます。
- (IBAction) tapAction:(id)sender
{
UIImagePickerController *ipc = [[[UIImagePickerController alloc] init] autorelease];
ipc.delegate = self;
ipc.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
// Popoverのインスタンス生成
UIPopoverController *popover = [[UIPopoverController alloc]
initWithContentViewController: ipc];
// Popoverを表示する
[popover presentPopoverFromBarButtonItem:sender
permittedArrowDirections:UIPopoverArrowDirectionAny
animated:YES];
}
注意することも書いてみたのでそちらもどうぞ
UIPopoverControllerを使う際に注意すること

0 件のコメント:
コメントを投稿