ストーリーボードを使用していますが、アプリにポップアップを追加したいと考えています。
私のポップアップには、スライダー (値を取得する必要があります) が含まれ、オプション (ポップアップの上部にある「x」) もキャンセルされます。
それを行う最善の方法は何ですか?
- ビューコントローラー?
- シブファイル?
- 意見?
前もって感謝します!
ストーリーボードを使用していますが、アプリにポップアップを追加したいと考えています。
私のポップアップには、スライダー (値を取得する必要があります) が含まれ、オプション (ポップアップの上部にある「x」) もキャンセルされます。
それを行う最善の方法は何ですか?
前もって感謝します!
コードでポップアップ、ボタン、スライダーを作成する方が良いと思います。あなたがそれをもっとコントロールできるよりも。同じコードでスライダーにアクセスしてポップオーバーを閉じる方が簡単です。
ポップオーバーが必要な場所からボタンが押されたときに、次のコードを IBAction 関数に挿入します。
//Create a popovercontroller
UIPopovercontroller *popOverController;
//Create an instance of the class you working in, your viewcontroller
YourViewController *popOverContent = [[YourViewController alloc] init];
//Create the popover view, you can change the size of it
UIView *popOverView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 200, 200)];
UISLider *slider = [[UISlider alloc] initWithFrame:CGRectMake(0, 0, 200, 200)];
UIButton *close = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 50, 20)]
//Add slider & button to view
[popOverView addSubview:slider];
[popOverView addSubview:button];
//Add view to viewcontroller
[popOverContent addSubview:popOverView];
//Alloc & init the popovercontroller
popOverController = [[UIPopoverController alloc] initWithContentViewController:popOverContent];
//Set content size of popover
popOverController.popoverContentSize = CGSizeMake(200, 200);
//present popup from a button or frame
[popOverController presentPopoverFromRect:self.yourButton.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
閉じるボタンの IBAction を作成し、次のコード行を使用してポップオーバーを閉じます。
[popOverController dismissPopoverAnimated:YES];
popOverControllers の詳細については、こちらを参照してください。