【问题标题】:Maximum size of a popover弹出框的最大尺寸
【发布时间】:2010-08-18 08:39:32
【问题描述】:

谁能确认popoverview的最大尺寸?

谢谢

【问题讨论】:

    标签: iphone ipad uipopovercontroller


    【解决方案1】:

    来自setPopoverContentSize: 文档:

    更改弹出框内容的大小时,您指定的宽度值必须至少为 320 磅且不超过 600 磅。高度值没有限制。但是,您指定的宽度和高度值都可以进行调整,以确保弹出窗口适合屏幕并且不会被键盘覆盖。

    【讨论】:

      【解决方案2】:

      我发现 585 似乎是最大值,再大一点,随着每次尺寸变化,整个东西都会向左移动。

      【讨论】:

        【解决方案3】:

        我刚刚验证此代码适用于 iPad 1 和 iPad 4(这意味着它在 iOS 5.1.1 - 6.1.2 中受支持)

        popover = [[UIPopoverController alloc] initWithContentViewController:yourVC];
            [popover setPopoverContentSize:CGSizeMake(1024, 1024)];
        
            [popover presentPopoverFromRect:CGRectZero
                                               inView:appDelegate.splitViewController.view
                             permittedArrowDirections:UIPopoverArrowDirectionAny
                                             animated:YES];
        

        您应该注意,弹出框很难消除,因为它会以纵向或横向“填满屏幕”。我的 appDelegate.splitViewController 中确实有这些方法:

        - (BOOL)shouldAutomaticallyForwardRotationMethods {
        
            NSLog(@"MG - shouldAutomaticallyForwardRotationMethods");
            return YES;
        }
        
        - (BOOL)automaticallyForwardAppearanceAndRotationMethodsToChildViewControllers {
        
            NSLog(@"MG - automaticallyForwardAppearanceAndRotationMethodsToChildViewControllers");
            return YES;
        }
        

        只需取消隐藏/隐藏您的 VC 角落中的按钮即可关闭:

        [popover dismissPopoverAnimated:YES];
        

        还应该注意,“popover”是一个强属性,否则当它尝试呈现时你会得到一个 deallocated 消息。

        【讨论】:

          猜你喜欢
          • 2012-08-18
          • 1970-01-01
          • 2020-07-30
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-04-26
          • 2010-10-26
          相关资源
          最近更新 更多