我将UIButton
添加到UICollectionView
标题中。我喜欢从按钮启动一个弹出窗口segue到一个UITableViewController
。
- 从集合视图标题上的按钮control-drag到并选择present as popoversegue。 当我构建项目时,我收到以下错误:
Main.storyboard:
error: Couldn't compile connection: <IBCocoaTouchOutletConnection:
0x7fd0436bc660 source=<IBProxyObject: l2l-iC-wi9 'Placeholder for
UIStoryboardPopoverPresentationSegueTemplate with OID iIR-Qd-1S2'>
property=anchorView destination=<IBUIButton: xWf-K4-adt 'Anchor
View'>>
指出如果我选择启动其他类型的segue,它们都可以正常工作。
如果按钮不位于
UIcollectionView
的头部(例如,UIViewController
,UIView
),弹出窗口segue也可以正常工作。
我也遇到过这种情况。标题(或单元格)只是真实标题的代理,因为可能有多个标题。在故事板中,只需从主collectionView本身锚定,然后你可以在prepareforSegue期间将锚点更改为指向正确的单元格。
在单元格的按钮动作中,调用
[self peformSegue: @"SegueName" sender: cell]
then在prepareForSegue
中,调用
segue.destinationViewController.popoverPresentationController.sourceView = (UIView *) sender
segue.destinationViewController.popoverPresentationController.sourceRect = ((UIView *) sender.bounds`