如何在UICollectionViewController的标头中访问UISegmentedControl?

用户名

因此,这个问题非常简单。我有一个UICollectionViewController (MyProfile.swift)标题部分(MyProfileHeader.swift)在后者中,我必须UISegmentedControl返回不同数量的项目和项目collection view cells(我不想在中初始化后者的类的实例UICollectionViewController)。这是我的代码MyProfile.swift class我尝试在viewForSupplementaryElementOfKind方法中添加目标以返回不同的查询(有效),但最终我必须访问numberOfItemsInSectionandcellForItemAtIndexPath方法中的分段控件"testObjects""writeObjects"array其经由查询值addTarget的方法viewForSupplementaryElementOfKind我设置的indexPath,但它returnserror原因很明显...我如何访问分段控制?

    override func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {

    var numberOfItems: Int? = 0

    let indexPath = NSIndexPath(forItem: 0, inSection: 0)

    let header = collectionView.dequeueReusableSupplementaryViewOfKind(UICollectionElementKindSectionHeader, withReuseIdentifier: "header", forIndexPath: indexPath) as! MyProfileHeader


    if header.userContent.selectedSegmentIndex == 1 {
        numberOfItems = textObjects.count
    } else if header.userContent.selectedSegmentIndex == 2 {
        numberOfItems = 0
    } else {
        numberOfItems = photoObjects.count
    }



    print("F: \(numberOfItems!)")
    return numberOfItems!
}
达韦达维达夫

在中为集合视图检索标头时viewForSupplementaryElementOfKind,可以在中存储对其的弱引用MyProfile

class MyProfile: UICollectionViewController {
...
...
weak var header: MyProfileHeader?
...    
...
func collectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, atIndexPath indexPath: NSIndexPath) -> UICollectionReusableView {
    header = collectionView.dequeueReusableSupplementaryViewOfKind(UICollectionElementKindSectionHeader, withReuseIdentifier: "header", forIndexPath: indexPath) as! MyProfileHeader

    return header
}

然后,您可以从中的任何其他功能访问此功能UICollectionViewController

请注意,numberOfItemsInSectioncellForItemAtIndexPath已创造了头之前可以叫viewForSupplementaryElementOfKind,所以当你访问它numberOfItemsInSectioncellForItemAtIndexPath或其他任何地方,你应该检查空,然后假定分段控制是默认值(因为这将是因为这是第一次显示视图)。就像是

let selectedSegmentIndex = header?.userContent.selectedSegmentIndex ?? 0 //0 is the default value here

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在UICollectionViewController的标头中访问UISegmentedControl?

来自分类Dev

如何访问标头中的标签

来自分类Dev

如何在标头中转义冒号-包括在YAML标头中

来自分类Dev

YII2:如何在gridview标头中添加ICON

来自分类Dev

如何在Dropzone上传请求的标头中包含CSRF令牌?

来自分类Dev

如何在Objective-C标头中引用Swift枚举

来自分类Dev

如何在标头中初始化静态成员

来自分类Dev

如何在REST服务的请求标头中设置cookie

来自分类Dev

如何在通用标头中类型定义实现定义的结构?

来自分类Dev

JWT:如何在标头中发送授权?

来自分类Dev

如何在以指针作为参数的标头中声明函数?

来自分类Dev

如何在Apache POI标头中拆分行

来自分类Dev

如何在CSV标头中删除多余的空格

来自分类Dev

如何在xml文件的标头中定义json的类型

来自分类Dev

如何在RTP标头中添加其他值/参数

来自分类Dev

如何在python请求的标头中发送API密钥?

来自分类Dev

如何在您的条纹Webhook标头中获得条纹签名

来自分类Dev

如何在单个标头中发送多个变量?

来自分类Dev

如何在Magento标头中显示CMS静态块

来自分类Dev

如何在data.frame的标头中转换行

来自分类Dev

包含后如何在标头中添加内容?

来自分类Dev

如何在jqgrid标头中包含组合框

来自分类Dev

如何在ui-grid标头中显示括号?

来自分类Dev

Python3:如何在方法标头中定义异常?

来自分类Dev

如何在http标头中为令牌设置变量

来自分类Dev

如何在 Python 请求标头中包含列表

来自分类Dev

如何从标头中删除标语?

来自分类Dev

如何从标头中删除标语?

来自分类Dev

在Objective C标头中访问Swift类

Related 相关文章

热门标签

归档