1.控制器可以自适应大小。
self.preferredContentSize
=
CGSizeMake(200,
400);
2.弹出控制器框
-(void)clickSortButton{
//继承UIViewController
self.sortViewController.modalPresentationStyle = UIModalPresentationPopover;
//相对sortbutton具体的位置
//继承UIViewController
self.sortViewController.modalPresentationStyle = UIModalPresentationPopover;
//相对sortbutton具体的位置
self.sortViewController.popoverPresentationController.sourceView
=self.headerView.sortButton;
//指定相对排序button的位置
self.sortViewController.popoverPresentationController.sourceRect = CGRectMake(self.headerView.sortButton.frame.size.width/2, self.headerView.sortButton.frame.size.height,
0, 0);
self.sortViewController.popoverPresentationController.sourceRect
=
self.headerView.sortButton.bounds;
self.sortViewController.popoverPresentationController.permittedArrowDirections = UIPopoverArrowDirectionAny;
self.sortViewController.popoverPresentationController.permittedArrowDirections = UIPopoverArrowDirectionAny;
self.sortViewController.popoverPresentationController.delegate
= self;
[self
presentViewController:self.sortViewController
animated:YES
completion:nil];
}
#pragma mark -
UIPopoverPresentationControllerDelegate
//不然不显示弹出控制器
-(UIModalPresentationStyle)adaptivePresentationStyleForPresentationController:(UIPresentationController
*)controller{
return UIModalPresentationNone;
}
本文介绍如何在 iOS 应用中实现弹出视图控制器的自适应大小及位置设置,通过设置 preferredContentSize 和 popoverPresentationController 属性,确保弹窗能够正确显示,并能根据触发按钮的位置调整其出现的位置。
7560

被折叠的 条评论
为什么被折叠?



