質問でターゲットデバイスを指定しなかったので、iPadの回答をしました
iPad:
ストーリーボードにドラッグ アンド ドロップするか、viewcontroller
またはtableviewcontroller
それを自由に選択します。viewcontroller
次に、ストーリーボードの desired から新しくドラッグ/ドロップされた へのセグエを作成しますviewcontroller
。セグエを として選択しますpopOver
。
上の図のように、セグエ設定でアンカーを選択してください。次に、 popover のサイズを編集する必要があります。uiviewcontroller
ビューを選択する場合は、tableviewcontroller
インターフェイス ビルダーの左側にあるテーブルビューを選択し、サイズを編集します。
初め:
2番:
その後、ポップオーバービューコントローラー(ドラッグ/ドロップビューコントローラー)をカスタマイズして、ボタンを追加し、必要に応じてラベルを付けます。
ポップオーバーで追加の操作を行う場合: 新しいファイルを作成することを忘れないでください -> uiviewcontroller または uitableviewcontroller のサブクラス。次に、ストーリーボードで新しく作成したビューコントローラーに関連付けます。
iPhone:
iPhoneにはポップオーバーコントローラーがありません
しかし、サードパーティのhttps://github.com/50pixels/FPPopoverソリューションを使用して、iphone のポップオーバー動作を模倣しようとします。QuartzCore
私は次のことを試みます:
初め:
を再びストーリーボードにドラッグ アンド ドロップしuiviewcontoller
、新しいファイル -> のサブクラスを作成しますuiviewcontroller
。
この新しいuiviewcontroller
ものは、ストーリーボードの隅に置かれます
次に、ストーリーボードの uiviewcontroller を新しい Created file に関連付けます。新しいファイル名を で作成したとしましょうYourViewController
。ビューにストーリーボード ID を与え、そのクラス名を選択します。
-(IBAction)buttonClicked:(UIButton*)okButton
{
//the view controller you want to present as popover
YourViewController *controller = [[YourViewController alloc] init];
//if [[YourViewController alloc] init]; doesn't work try this
// UIStoryboard* sb = [UIStoryboard storyboardWithName:@"MainStoryboard"
bundle:nil];
//YourViewController *controller = [sb instantiateViewControllerWithIdentifier:@"YourViewController"];
//our popover
FPPopoverController *popover = [[FPPopoverController alloc] initWithViewController:controller];
//the popover will be presented from the okButton view
[popover presentPopoverFromView:okButton];
//no release (ARC enable)
//[controller release];
}
注: 私はその FPPopover を以前に使用したことがないので、画面サイズを調整する方法がわかりませんが、ドキュメントにさらに説明があるはずです。