iOS调用系统空间实现弹窗

    xiaoxiao2021-03-25  98

    1.首先创建vc,并且重新系统方法

    - (CGSize)preferredContentSize{

        

        if (self.presentingViewController && self.tableView != nil ) {

            

            CGSize size = self.presentingViewController.view.bounds.size;

            size.width = 200;

            

            CGSize size1 = [self.tableView sizeThatFits:size];

            

            return size1;

        }else{

            

            return [super preferredContentSize];

        }

        

        

    }

    2.在调用的页面直接初始化即可

     TestNewViewController *test = [[TestNewViewController alloc]init];

        test.modalPresentationStyle = UIModalPresentationPopover;

        test.popoverPresentationController.barButtonItem = self.navigationItem.rightBarButtonItem;

        test.popoverPresentationController.permittedArrowDirections = UIPopoverArrowDirectionUp;

        test.popoverPresentationController.delegate = self;

        [self presentViewController:test animated:YES completion:nil];

    3.在这里需要遵循协议,

    UIPopoverPresentationControllerDelegate

    并且实现方法

    -(UIModalPresentationStyle)adaptivePresentationStyleForPresentationController:(UIPresentationController *)controller

    {

        NSLog(@"%@",controller);

        return  UIModalPresentationNone;

    }

    转载请注明原文地址: https://ju.6miu.com/read-22289.html

    最新回复(0)