也许我的问题很简单,我太傻了。 我的问题是,我要访问外部获取任何tableView函数之外的indexpath
overide func tableView(...)
所以我在我的TableView类的indexPath,并有一个单独的类,如:
func setColor()
{
...
}
这个类里面我要访问的indexPath 。我怎样才能做到这一点?
也许我的问题很简单,我太傻了。 我的问题是,我要访问外部获取任何tableView函数之外的indexpath
overide func tableView(...)
所以我在我的TableView类的indexPath,并有一个单独的类,如:
func setColor()
{
...
}
这个类里面我要访问的indexPath 。我怎样才能做到这一点?
indexPath是一个对象,它被创建并传递给UITabelViewDelegate或UITableViewDataSource方法。它可以让你指出哪个单元格被加载/点击等。
所以你将无法从外部访问这个对象。如果你想改变一些细胞的某些物质,例如您应该将颜色存储在属性中的backgroundColor,更改此属性并强制重绘。在创建单元格的委托方法中,使用此属性来设置颜色。
这是一些示例代码。
的ViewController
class TestTableViewController: UIViewController, UITableViewDelegate {
// Store array of color
var backColors = [UIColor.redColor(), UIColor.greenColor()]
// Method which changes color
func setColor(row: Int, color: UIColor) {
backColors[row] = color
}
// Override draw
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
// Create your cell
// ...
// Set color
cell.backgroundColor = backColors[indexPath.row]
}
}
传递indexPath作为参数。 – rmaddy
你需要澄清你的目标是什么。如何以及何时调用这个'setColor'方法?它是什么课程? – rmaddy
我在类TableView中,从另一个类的外部调用此函数,名为setColor。 – Anokrize