我一直在寻找有关如何做到这一点的解决方案,但我有点困惑.
我想在我的应用程序中显示数据表,而不是Apple的TableView,更像是在Excel或HTML中找到的表.此外,在我的应用程序中,我将在不同的页面中有多个这样的表格,我希望以相同的方式设置样式,而不是所有具有相同行数或列数的表格.这些表格可能会与图像或文本一起显示在屏幕上,可能永远不会单独显示.(所以我需要一个可放在UIViewController中的元素)
基本上就像这样一张桌子(因为我的数据是保密的,我把它放在谷歌图片上)

我有关于如何做到这一点的理论,但我不确定它是正确的还是确切地说如何做到这一点.
我的理论是我应该创建一个UICollectionView的子类,让我们称之为MyTablesView.MyTablesView将有一个名为data的变量.我的包含表格的页面/ VC将有一个MyTablesView实例,并在此变量中提供数据.MyTablesView负责样式设置和显示此数据.
我对Swift相当新,我不知道究竟是什么,所以我不确定如何解决这个问题.我对如何编写UICollectionView非常困惑.我试着阅读这个教程:http://www.raywenderlich.com/78550/beginning-ios-collection-views-swift-part-1但它是一个UICollectionViewController而不是UICollectionView所以我不知道如何调整它.
所以现在这就是我所有的...类MyTablesView:UICollectionView {var data = [String]}(我现在把字符串放了,因为我不是100%肯定会在表中的数据,它可能会最终成为双打,但我还需要一些标题......)
所以我想我的问题是:如何正确地子类化UICollectionView以显示ViewController将提供给它的数据?
如果有什么不清楚,请告诉我.提前致谢.
我想添加一个包含7个静态单元格的垂直集合视图.我知道如何动态地做,但我没有理由这样做.
我必须使用cellForRow方法吗?我添加了一个集合视图到我的viewController,并添加了4个单元格,将委托从collectionView连接到vc(使用storyBoard),但是当我运行它时,它显示了一个空的collectionView.
我确实设置了numberOfSections返回1而numberOfCellsInSection返回7.所以我错过了什么?或者我是否必须遵守DataSource协议并实现cellForRow方法?(在TableView中,我可以在使用静态单元格时跳过cellForRow).
谢谢您的帮助.
我曾经假设将背景图像添加到a中很容易UICollectionViewCell,但是我很难搞清楚它.我有一个这样的边框图像,我想添加到我的每个单元格中UICollectionView.
border.png
我看不到在Interface Builder中添加它的选项,我不确定在UICollectionViewCell编程上使用哪种方法.
我见过这些类似的问题:
UICollectionView,而不是UICollectionViewCell)编辑:似乎与此相同的问题
我使用自定义布局和单元格制作了集合视图,但我的单元格的位置有点偏离,所以我决定给它们编号,以便我可以更轻松地调试它。我按照这个人的回答使用标签为我的单元格编号。不知何故myLabel为零并导致我的应用程序崩溃。
我相信我已经正确连接了插座,但也许有人可以提供一个列表让我检查我是否做错了什么。
import UIKit
class ViewController: UIViewController, UICollectionViewDataSource, UICollectionViewDelegate {
@IBOutlet var gridView: UICollectionView!
private let reuseIdentifier = "DesignCell"
private let numberOfSections = 1
private let numberOfCircles = 48
override func viewDidLoad() {
super.viewDidLoad()
self.gridView.registerClass(MyCell.self, forCellWithReuseIdentifier: reuseIdentifier)
}
func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int {
return numberOfSections
}
func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return numberOfCircles
}
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = …Run Code Online (Sandbox Code Playgroud) ios uicollectionview uicollectionviewcell uicollectionviewlayout swift