弹出UIPopoverPresentationController的基本设置

封装一个方法,把基本的属性设置都写进里面,外面只管调用即可

-(void)popViewBasicSetup:(UIViewController *)VC withSourceView:(UIView *)sender withDelegate:(id)object{
  // 设置 Sytle
  VC.modalPresentationStyle = UIModalPresentationPopover;
  // 需要通过 sourceView 来判断位置的
  VC.popoverPresentationController.sourceView = sender;
  // 指定箭头所指区域的矩形框范围(位置和尺寸),以sourceView的左上角为坐标原点
  // 这个可以 通过 Point 或  Size 调试位置
  VC.popoverPresentationController.sourceRect = sender.bounds;
  // 箭头方向
  VC.popoverPresentationController.permittedArrowDirections = UIPopoverArrowDirectionAny;

}

细心的可以看到这里我并没有传弹出控制的可见内容,也就是这个属性

toolVC.preferredContentSize = CGSizeMake(204, 152);

是因为,我这里是ipad开发,把这个属性封装进去之后,我不知道为啥,她的高度不受控制,但是宽度可以。如果有人找到解决的方法,可以留言给我。

你可能感兴趣的:(弹出UIPopoverPresentationController的基本设置)