IOS-带有故事板的弹出窗口

IOS-带有故事板的弹出窗口,ios,storyboard,uialertview,Ios,Storyboard,Uialertview,我正在使用故事板,我想在我的应用程序中添加一个弹出窗口 我的弹出窗口将包含一个滑块(我需要获取他的值),以及取消选项(“x”位于弹出窗口顶部) 最好的方法是什么 视图控制器 Xib文件 风景 提前谢谢 根据您想对弹出窗口执行的操作和显示方式,您可以选择: 如果要在模式样式中显示弹出窗口,并且要从该弹出窗口显示其他视图控制器,请从情节提要中选择ViewController 自定义UIView的Xib文件,如果您使用弹出窗口显示某些信息并获取用户输入,则您将关闭弹出窗口,弹出窗口将用于多个位置(

我正在使用故事板,我想在我的应用程序中添加一个弹出窗口

我的弹出窗口将包含一个滑块(我需要获取他的值),以及取消选项(“x”位于弹出窗口顶部)

最好的方法是什么

  • 视图控制器
  • Xib文件
  • 风景

提前谢谢

根据您想对弹出窗口执行的操作和显示方式,您可以选择:

  • 如果要在<代码>模式样式中显示弹出窗口,并且要从该弹出窗口显示其他视图控制器,请从情节提要中选择ViewController
  • 自定义UIView的Xib文件,如果您使用弹出窗口显示某些信息并获取用户输入,则您将关闭弹出窗口,弹出窗口将用于多个位置(不同的视图控制器)
  • 在一个故事板视图控制器中自定义UIView,如果您希望显示一些信息并获得用户输入,则弹出窗口将仅在一个位置(一个ViewController)上使用

  • 我认为最好在代码中创建一个弹出窗口、按钮和滑块。而不是你对它有更多的控制。它更容易访问您的滑块&在相同的代码中关闭popover

    当从您想要的位置按下按钮时,将此代码放入iAction功能:

    //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];
    
    [popOverController dismissPopoverAnimated:YES];
    
    然后为“关闭”按钮创建iAction,并使用这行代码关闭popover:

    //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];
    
    [popOverController dismissPopoverAnimated:YES];
    
    您可以找到有关PopOvercontroller的更多信息