我对iOS编程比较陌生,并且尝试了一些尝试但无济于事。
我想在CollectionView
里面放一个TableViewCell
。我可以单独每个代码,但不知道如何设置和引用每个CollectionView
内TableViewCell
。
我在http://ashfurrow.com/blog/putting-a-uicollectionview-in-a-
uitableviewcell/中
找到了本教程,该教程显示了如何在Objective-C中完成此操作,但我一直都在为Obj-C苦苦挣扎。
有谁知道Swift教程或可以提供帮助吗?我正在创建一个简单的项目/代码,我将稍后发布以尝试和帮助。
编辑1
我刚刚找到了上面链接的快速版本。我现在正在解决此问题,但修改AppDelegate似乎过于复杂。
https://github.com/DahanHu/DHCollectionTableView
非常感谢Rob
创建一个普通的UITableView并在UITableViewCell中创建UICollectionView。您的collectionView委托和数据源应符合该UITableViewCell。
只是通过这个
在您的ViewController中
// Global Variable
var tableView: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
tableView = UITableView(frame: self.view.bounds)
tableView.delegate = self
tableView.dataSource = self
self.view.addSubview(tableView)
tableView.registerClass(TableViewCell.self, forCellReuseIdentifier: "TableViewCell")
tableView.registerClass(UITableViewCell.self, forCellReuseIdentifier: "NormalCell")
}
func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 1
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 5
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
if indexPath.row == 3 {
var cell: TableViewCell = tableView.dequeueReusableCellWithIdentifier("TableViewCell", forIndexPath: indexPath) as! TableViewCell
cell.backgroundColor = UIColor.groupTableViewBackgroundColor()
return cell
} else {
var cell: UITableViewCell = tableView.dequeueReusableCellWithIdentifier("NormalCell", forIndexPath: indexPath) as! UITableViewCell
cell.textLabel?.text = "cell: \(indexPath.row)"
return cell
}
}
如您所见,我创建了两个不同的单元格,一个自定义TableViewCell仅在行索引为3时返回,而在其他索引中则返回一个基本UITableViewCell。
自定义“ TableViewCell”将具有我们的UICollectionView。因此,创建一个UITableViewCell子类并写下以下代码。
import UIKit
class TableViewCell: UITableViewCell, UICollectionViewDataSource, UICollectionViewDelegate {
var collectionView: UICollectionView!
override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
let layout = UICollectionViewFlowLayout()
layout.scrollDirection = UICollectionViewScrollDirection.Horizontal
collectionView = UICollectionView(frame: self.bounds, collectionViewLayout: layout)
collectionView.delegate = self
collectionView.dataSource = self
collectionView.registerClass(UICollectionViewCell.self, forCellWithReuseIdentifier: "CollectionViewCell")
collectionView.backgroundColor = UIColor.clearColor()
self.addSubview(collectionView)
}
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
// MARK: UICollectionViewDataSource
func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int {
return 1
}
func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return 10
}
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell: UICollectionViewCell = collectionView.dequeueReusableCellWithReuseIdentifier("CollectionViewCell", forIndexPath: indexPath) as! UICollectionViewCell
if indexPath.row%2 == 0 {
cell.backgroundColor = UIColor.redColor()
} else {
cell.backgroundColor = UIColor.yellowColor()
}
return cell
}
}
希望能帮助到你。
我在一个POC中使用了最近嵌入的Spring数据Neo4j。它在一台机器上快速工作。在投入生产之前,我想将数据库与应用服务器分离。我配置了三个Neo4j服务器实例和HA代理,并使用Spring数据Neo4j Rest进行连接。但速度最差。每个查询的执行时间超过30秒。 我正在考虑使用嵌入HA的Neo4j?有人能给我提供链接/教程,用HA代理在嵌入式模式下配置Spring Data Neo4j吗。
问题内容: 我正在使用Toplink Essentials(JPA)+ GlassFish v3 + NetBean 6.9 我有一个带有复合主键的表: 我创建了2个实体类,一个是实体本身,第二个是PK类。 现在.. 我该如何在WHERE中用JPQL编写SELECT子句? 这失败了。 http://www.mail- archive.com/users@openjpa.apache.org/msg
问题内容: 包: struct中的匿名接口是什么意思? 问题答案: 通过这种方式,反向实现了,我们可以覆盖特定的方法而不必定义所有其他方法 请注意,这里是如何交换而不是交换的,这也是为struct声明的唯一方法,即使实现 无论此方法内部传递了什么结构,我们都会将其转换为新的结构。 真正的价值在于,如果您认为如果无法采用这种方法,该怎么办。 向吗?添加另一种方法? 创建另一个ReverseInter
Extends Widget A scrollable list that displays data items in cells, one per row. Cells are created on demand by the createCell callback and reused on scrolling. Import this type with “const {Collectio
实现类似Pinterest的瀑布流视图显示形式,支持显示图片和文字。 [Code4App.com]
问题内容: 说,我有以下实体: 通过结合使用模式自动生成功能,我得到了一个附加表,其中包含和之间的映射。但是,我想实现通过添加一个一对多的关系的 编号 为( 例如,没有附加表 )。 这可能吗?如果是,我应该使用什么注释来创建这种映射? 问题答案: 通常,使用@JoinColumn批注是可能的。它也适用于可嵌入对象。 如果您对embeddable中指定的列的A_ID名称不满意,则可以覆盖实体A中的列