ios气泡弹出框popover效果系统原生方法实现


ios气泡弹出框popover效果系统原生方法实现

#pragma markbar点击事件

- (void)rightBarClick{

    

    XiXiRegisterPopoverVC *view = [[XiXiRegisterPopoverVCalloc]init]

    

// 设定大小(此处也可不做设置,不做设置的效果如下图)

    view.preferredContentSize =CGSizeMake(150,100);

    // 初始化

    view.modalPresentationStyle =UIModalPresentationPopover;

    UIPopoverPresentationController *popVC = view.popoverPresentationController;

    // 设置代理(iPhone必须设置代理才能显示)

    popVC.backgroundColor = [UIColorcolorWithRGB:0x000000alpha:0.8];

    popVC.delegate =self;

    // 获取按钮

    popVC.barButtonItem =self.navigationItem.rightBarButtonItem;

    // 退出视图

    [selfpresentViewController:viewanimated:YEScompletion:nil];

}


- (UIModalPresentationStyle)adaptivePresentationStyleForPresentationController:(UIPresentationController *)controller{

    // 此处为不适配(如果选择其他,会自动视频屏幕,上面设置的大小就毫无意义了)

    returnUIModalPresentationNone;

}


// ------------------------华丽的分割线-----------

如果想要在按钮点击的时候触发

按钮点击按如下方式实现

- (IBAction)btnClick:(UIButton *)sender {

    WFPopViewController *viewVC = [[WFPopViewControlleralloc] init];

    viewVC.preferredContentSize =CGSizeMake(150,100);

    viewVC.modalPresentationStyle =UIModalPresentationPopover;

    UIPopoverPresentationController *popVC = viewVC.popoverPresentationController;

    popVC.delegate =self;

    // 气泡依附于哪个view弹出

    popVC.sourceView = sender;

    // 气泡从哪个位置弹出,是以按钮的上边中心点即(sender.width/20)为坐标原点。

    popVC.sourceRect =CGRectMake(0, sender.frame.size.height,0, 0);

    // > 箭头的指向(上,下,左,右)

    popVC.permittedArrowDirections =UIPopoverArrowDirectionUp;

    [selfpresentViewController:viewVCanimated:YEScompletion:nil];


}



  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值