- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个带有 ViewController 的 Storyboard,在 ViewController 中我有一个带有原型(prototype)单元格的 UICollectionView。
我已经有一个“MyCollectionViewController”(因为我试图将我的 CollectionViewController 包装在 ViewController 中)。现在我想重用该 Controller ,但我不知道如何将 Storyboard 中的 CollectionView 与新的 CollectionViewController 连接起来。将 CollectionView 从 CollectionViewController 分配到 ViewController 中的 Outlet 似乎不起作用。
我知道我可以将单元格原型(prototype)制作成一个 .xib 文件并在代码中创建 CollectionView。但我的雇主更喜欢将所有内容都放在 Storyboard中以便于维护。
编辑:chkn 的回答效果很好。要将父 View Controller 连接到容器,您可以像这样覆盖 PrepareSegue 方法。
public override void PrepareForSegue (UIStoryboardSegue segue, NSObject sender)
{
base.PrepareForSegue (segue, sender);
if (segue.SourceViewController == this) {
if (segue.DestinationViewController.GetType () == typeof(MyChildViewController)) {
MyChildViewController childViewController = segue.DestinationViewController as MyChildViewController;
}
}
}
最佳答案
您不能将一个 View Controller 中的 View 分配给另一个 View Controller 上的 socket 。
但是,您可以拥有一个包含 Collection View 的 View Controller ,然后使用容器 View 将该 View Controller 嵌入到其他 View Controller 中。
只需创建托管 UICollectionView
的 View Controller (使用 UICollectionViewController
很容易,但这并不重要)。然后在每个你想嵌入它的 View Controller 上,从工具箱中拖出一个容器 View 并删除它附带的默认 View Controller 。然后,按住 Ctrl 并从容器 View 拖动到要嵌入的共享 UICollectionView
Controller 。
您的 Storyboard可能看起来像这样:
该示例可在此处获得:
https://github.com/chkn/StoryboardExamples/tree/master/CollectionViewReuse
关于ios - Xamarin iOS : How to connect a view from a storyboard to a controller?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29260938/
我是一名优秀的程序员,十分优秀!