是否有可能将UIViewController显示为iphone中的popover

时间:2016-08-27 13:33:40

标签: ios objective-c iphone uiviewcontroller uipopover

我使用UIViewController创建了Interface Builder是否可以将UIViewController视为指定大小的弹出窗口。

我的UIViewController的大小是默认600X600,因为我使用的是大小类。

我尝试了各种答案,但没有一个适用于我。

1 个答案:

答案 0 :(得分:0)

在电话中显示Popover只需制作UIPopoverController代码类别:

    //  UIPopoverController+iPhone.h
        #import <UIKit/UIKit.h>

        @interface UIPopoverController (iPhone)
        + (BOOL)_popoversDisabled;
        @end
   //  UIPopoverController+iPhone.m


        #import "UIPopoverController+iPhone.h"

        @implementation UIPopoverController (iPhone)
        + (BOOL)_popoversDisabled {
            return NO;
        }
        @end

只需在您需要的地方导入此类别。并在显示iPAD时显示popover。

-(IBAction)showPopOver:(id)sender {
TestPopOver *tstPop = [self.storyboard instantiateViewControllerWithIdentifier:@"TestPopOver"];
    popOverController = [[UIPopoverController alloc]initWithContentViewController:tstPop];
    popOverController.popoverContentSize = CGSizeMake(300.0, 300.0);
    [popOverController presentPopoverFromRect:[(UIButton *)sender frame]
                                          inView:self.view
                        permittedArrowDirections:UIPopoverArrowDirectionAny
                                        animated:YES]; }