SYPopover 1.0.6

SYPopover 1.0.6

测试已测试
语言语言 Obj-CObjective C
许可证 自定义
发布上次发布2017年4月

Stanislas Chevallier 维护。



SYPopover 1.0.6

  • Stan Chevallier

使用简单的导航控制器和视图控制器子类创建 Popover。

####它是如何工作的?

  1. 创建 SYPopoverViewController 的子类,将您的子视图添加到 popoverView 并将其放置在其内

     - (void)updateFramesAndAlphas
     {
     	[super updateFramesAndAlphas];
     	// here the self.popoverView.frame is up to date
     }
    
  2. 使用 SYPopoverNavigationController 来呈现 SYPopoverViewController 的子类

     -(void)presentAsPopoverFromViewController:(SYPopoverViewController *)viewController animated:(BOOL)animated;
    
  3. 您可以决定使用(iOS 7+)透明背景等

     [popoverNavController setBackgroundsColor:[UIColor clearColor]]
    
  4. 您可以使用代理方法知道和控制何时关闭 Popover

     -(BOOL)popoverNavigationControllerShouldDismiss:(SYPopoverNavigationController *)popoverNavigationController;
     -(void)popoverNavigationControllerWillDismiss:(SYPopoverNavigationController *)popoverNavigationController animated:(BOOL)animated;
     -(void)popoverNavigationControllerWillPresent:(SYPopoverNavigationController *)popoverNavigationController animated:(BOOL)animated;
    
  5. 您定义视图控制器的大小

     BOOL showSmallMenu = ....
     
     [popoverVC setPopoverSizeBlock:^(BOOL iPad, BOOL iPhoneSmallScreen) {
     	
     	// don't need height > width
     	if(showSmallMenu)
     		return CGSizeMake(300, 300);
     
     	if(iPad) 
     		return CGSizeMake(300, 600);
     		
     	// iPhone and iPods with 3inches screens
     	if(iPhoneSmallScreen)
     		return CGSizeMake(300, 440);
     		
     	// Other devices
     	return CGSizeMake(300, 500);
     }];
    

许可证

您可以在您想使用它的每个项目中随意使用,如果出现问题,请不要责怪我 :)

-- dvkch