控制两个不同的collectionview

史蒂芬·吴

我目前正在尝试控制两个不同的集合视图。我还在每个集合视图中都嵌入了按钮,我希望它们每个都包含来自数组的一组值。到目前为止,这是我的代码,我不知道该怎么做:

import UIKit
class MyButtonCell: UICollectionViewCell{
    @IBOutlet weak var buttonOne: UIButton!
    @IBOutlet weak var targetButton: UIButton!
    
    var callback: (() -> ())?
    
    override init(frame: CGRect) {
        super.init(frame: frame)
        commonInit()
        
    }
    required init?(coder: NSCoder) {
        super.init(coder: coder)
        commonInit()
    }
    func commonInit() -> Void {
        contentView.layer.borderWidth = 1
        contentView.layer.borderColor = UIColor.black.cgColor
    }
    
    @IBAction func buttonTapped(_ sender: UIButton) {
        callback?()
    }
}

class StevenViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource {

    let buttonTitles: [String] = [
        "4", "6", "7", "8"
    ]
    
    var targetButtonTitles: [String] = [
        "", "", "", ""
    ]
    
    var current:String = ""
    @IBOutlet var collectionView: UICollectionView!
    
    @IBOutlet var targetCollection: UICollectionView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        targetCollection.delegate = self
        targetCollection.dataSource = self
        
        collectionView.delegate = self
        collectionView.dataSource = self
        
        
    }
    func numberOfSections(in collectionView: UICollectionView) -> Int {
        return 1
    }
    func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
        return buttonTitles.count
        
    }
    func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
        let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "myCellID", for: indexPath) as! MyButtonCell
        let targetCell = targetCollection.dequeueReusableCell(withReuseIdentifier: "myCellID", for: indexPath) as! MyButtonCell

           // set the button title (and any other properties)
        
           cell.buttonOne.setTitle(buttonTitles[indexPath.item], for: [])
        

           targetCell.targetButton.setTitle(self.targetButtonTitles[indexPath.item], for: [])
        
           // set the cell's callback closure
           cell.callback = {
               print("Button was tapped at \(indexPath)")
               self.targetButtonTitles.append(self.buttonTitles[indexPath.item])
               print(self.targetButtonTitles)
           
               
               // do what you want when the button is tapped
           }
           

           return targetCell
        
    }
}

buttonTitles和targetButtonTitles是我希望每个collectionview包含的两个数组。

这就是现在的样子-两者都显示相同的数组。我知道我可能应该为单元格使用不同的标识符ID,但是一旦这样做,它给我一个错误,提示“无法使种类的视图出列:具有标识符目标的UICollectionElementKindCell”

在此处输入图片说明

罗希特·帕里哈(Rohit Parihar)

在UICollectionViewDelegate和UICollectionViewDataSource中

您可以使用此代码段来标识当前的UICollectionView。

 if collectionView == [YOUR_COLLECTIONVIEW_QUTLET] {
       
      
 }

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如果一个控制器的sizeForItemAtIndexPath中的两个collectionview不起作用

来自分类Dev

仅为两个控制器分配不同的域

来自分类Dev

previousSibling在控制台中显示了两个不同的内容

来自分类Dev

单个CollectionView中两个具有不同尺寸的单元格

来自分类Dev

角两个不同的包含控制器内部有不同的$ scope

来自分类Dev

如何分配相同的控制器方法来处理两个不同视图上的两个表单?

来自分类Dev

如何从UIViewController扩展中为两个不同的控制器返回两个不同的呈现控制器?

来自分类Dev

将一个NSSearchField的文本绑定到两个不同的控制器对象

来自分类Dev

通过Rails中的两个不同的控制器创建联接表记录

来自分类Dev

在Spring中使用不同包的两个同名控制器

来自分类Dev

在angularJS中的两个不同控制器中重用函数

来自分类Dev

使用Autofac在两个控制器中获得不同的接口

来自分类Dev

在两个不同的控制器上使用相同的功能

来自分类Dev

导轨在同一控制器中的两个不同的布局模板?

来自分类Dev

使用python输出到两个不同的控制台

来自分类Dev

如何使控制器端点,以获得Java的春季两个不同的对象?

来自分类Dev

在Rails路由中共享两个不同控制器的路径?

来自分类Dev

维护两个不同的源代码控制服务器

来自分类Dev

在两个不同目录中具有相同的控制器名称

来自分类Dev

通过Rails中的两个不同的控制器创建联接表记录

来自分类Dev

在两个不同的控制器上使用相同的功能

来自分类Dev

AngularJs:使用两个不同的控制器进行ng-repeat搜索

来自分类Dev

在angularJS中的两个不同控制器中重用函数

来自分类Dev

使用python输出到两个不同的控制台

来自分类Dev

一键操作推两个不同的视图控制器-iOS

来自分类Dev

从控制器中的两个不同变量中绕过模型中的方法?

来自分类Dev

两个控制器在 Spring Boot 中具有不同的最大文件大小

来自分类Dev

是否可以将相同的视图添加到两个不同的视图控制器?

来自分类Dev

我可以在 rails 的单个页面中呈现两个不同的控制器操作吗

Related 相关文章

  1. 1

    如果一个控制器的sizeForItemAtIndexPath中的两个collectionview不起作用

  2. 2

    仅为两个控制器分配不同的域

  3. 3

    previousSibling在控制台中显示了两个不同的内容

  4. 4

    单个CollectionView中两个具有不同尺寸的单元格

  5. 5

    角两个不同的包含控制器内部有不同的$ scope

  6. 6

    如何分配相同的控制器方法来处理两个不同视图上的两个表单?

  7. 7

    如何从UIViewController扩展中为两个不同的控制器返回两个不同的呈现控制器?

  8. 8

    将一个NSSearchField的文本绑定到两个不同的控制器对象

  9. 9

    通过Rails中的两个不同的控制器创建联接表记录

  10. 10

    在Spring中使用不同包的两个同名控制器

  11. 11

    在angularJS中的两个不同控制器中重用函数

  12. 12

    使用Autofac在两个控制器中获得不同的接口

  13. 13

    在两个不同的控制器上使用相同的功能

  14. 14

    导轨在同一控制器中的两个不同的布局模板?

  15. 15

    使用python输出到两个不同的控制台

  16. 16

    如何使控制器端点,以获得Java的春季两个不同的对象?

  17. 17

    在Rails路由中共享两个不同控制器的路径?

  18. 18

    维护两个不同的源代码控制服务器

  19. 19

    在两个不同目录中具有相同的控制器名称

  20. 20

    通过Rails中的两个不同的控制器创建联接表记录

  21. 21

    在两个不同的控制器上使用相同的功能

  22. 22

    AngularJs:使用两个不同的控制器进行ng-repeat搜索

  23. 23

    在angularJS中的两个不同控制器中重用函数

  24. 24

    使用python输出到两个不同的控制台

  25. 25

    一键操作推两个不同的视图控制器-iOS

  26. 26

    从控制器中的两个不同变量中绕过模型中的方法?

  27. 27

    两个控制器在 Spring Boot 中具有不同的最大文件大小

  28. 28

    是否可以将相同的视图添加到两个不同的视图控制器?

  29. 29

    我可以在 rails 的单个页面中呈现两个不同的控制器操作吗

热门标签

归档