我想在集合视图中使用表格视图单元格的数据。那些是在同一个控制器。我怎样才能做到这一点 ?当我尝试这个时,委托来了,没有任何反应.Nevermind CellForRowAtIndexPath,numberOfRowsInSection方法。
protocol DataDelegate {
func dataInfo(survey:Survey)
}
import UIKit
class SurveyViewControllerLeftTableView: UITableView,UITableViewDataSource,UITableViewDelegate {
var survey = [Survey]()
var myDelegate : DataDelegate?
override func awakeFromNib() {
self.dataSource=self
self.delegate=self
}
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
myDelegate?.dataInfo(survey[(indexPathForSelectedRow?.row)!])
}
}
import UIKit
class BottomCollectionView: UICollectionView,UICollectionViewDataSource,UICollectionViewDelegate,DataDelegate {
var surveyBottomCollection = [Survey]()
override func awakeFromNib() {
super.awakeFromNib()
self.delegate = self
self.dataSource = self
}
func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return surveyBottomCollection.count
}
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell : BottomCollectionViewCell = dequeueReusableCellWithReuseIdentifier("cell", forIndexPath: indexPath) as! BottomCollectionViewCell
cell.surveyQuestionNumberLabel.text = surveyBottomCollection[indexPath.row].questionNumber
cell.surveyQuestionDescriptionLabel.text = surveyBottomCollection[indexPath.row].questionDescription
return cell
}
func dataInfo(survey: Survey) {
print(survey.questionDescription)
surveyBottomCollection.append(survey)
self.reloadData()
}
答案 0 :(得分:0)
根据我的知识,您需要创建['foo', 'bar'] + ['bar', 'baz']
自定义单元格或需要在UITableView
中创建单元格,然后使用下面的代码将storyboard
单元格数据导入您的表格视图单元格。< / p>
同时选择任何单元CollectionView
将调用并执行select函数时,您需要将该tableview数组对象相互添加tableview:didSelect
并在您Array
中使用该数组查看单元格。
Collection
更新:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell:UITableViewCell = self.tableView.dequeueReusableCellWithIdentifier("cell") as UITableViewCell
// Replace Beow line with your costume cell outlets
cell.textLabel?.text = self.items[indexPath.row]
//Like this Probably same like collection view or what ever you want to rename it in TableViewCell
cell.surveyQuestionNumberLabel.text = surveyBottomCollection[indexPath.row].questionNumber
cell.surveyQuestionDescriptionLabel.text = surveyBottomCollection[indexPath.row].questionDescription
return cell
}
希望上面的代码将帮助您实现您想要的目标。