如何使用情节提要从自定义 uitableviewcell 正确启动弹出框转场
Posted
技术标签:
【中文标题】如何使用情节提要从自定义 uitableviewcell 正确启动弹出框转场【英文标题】:How to correctly start a popover segue from a custom uitableviewcell using the storyboard 【发布时间】:2015-03-29 15:52:15 【问题描述】:那么,当打开它的按钮位于表格视图中的自定义原型单元格内时,如何使用情节提要正确设置弹出框转接?
-
它应该可以在 iphone 和 ipad 上运行
它应该在 ipad 上有正确的位置和锚点
【问题讨论】:
【参考方案1】:我认为最优雅的解决方案如下:
像往常一样创建从按钮到相应 ViewController 的 segue
打开 segue 并将锚点设置为表格视图(从圆圈拖动到视图)。
在准备转场时添加以下内容:
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
UIViewController *vc = (UIViewController *)segue.destinationViewController;
UIPopoverPresentationController *ppc = vc.popoverPresentationController;
UIButton *button = (UIButton *)sender;
ppc.sourceRect = button.frame;
ppc.sourceView = button.superview;
【讨论】:
当故事板中的转场开始时,这是否有效?在这种情况下,我想我记得这个解决方案的一个问题,因为必须首先在情节提要中指定锚点,而且我认为以这种方式以编程方式更改它并不成功。 对不起,我使用的是容器视图控制器,这让我感到困惑。这确实奏效了。谢谢。以上是关于如何使用情节提要从自定义 uitableviewcell 正确启动弹出框转场的主要内容,如果未能解决你的问题,请参考以下文章
如何使用创建的自定义 IBDesignable 类从情节提要中更改按钮的角半径
如何在一个 tableView 中使用两个不同的自定义单元格?使用情节提要,iOS 7