【发布时间】:2013-05-02 19:56:22
【问题描述】:
我正在使用情节提要,我想在我的应用中添加一个弹出窗口。
我的弹出窗口将包含一个滑块(我需要获取他的值),并取消选项(弹出窗口顶部的“x”)。
最好的方法是什么?
- 视图控制器?
- Xib 文件?
- 查看?
提前致谢!
【问题讨论】:
标签: ios storyboard uialertview
我正在使用情节提要,我想在我的应用中添加一个弹出窗口。
我的弹出窗口将包含一个滑块(我需要获取他的值),并取消选项(弹出窗口顶部的“x”)。
最好的方法是什么?
提前致谢!
【问题讨论】:
标签: ios storyboard uialertview
我认为最好在您的代码中创建一个弹出窗口、按钮和滑块。比你有更多的控制权。在同一代码中访问滑块和关闭弹出框更容易。
当从您想要弹出框的位置按下按钮时,将此代码放入 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的信息here
【讨论】:
根据您想对弹出窗口做什么以及您希望如何呈现它,您可以选择:
modal style 中显示一个弹出窗口,并且您想从该弹出窗口中显示其他视图控制器,则从情节提要中的 ViewController。【讨论】: