我是iphone app开发的新手。
我目前有一个表视图,但想用我自己的新闻故事填充它,知道我怎么能这样做?
目前我有以下内容:
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! NewsTableViewCell
// Configure the cell...
if indexPath.row == 0 {
cell.postImageView.image = UIImage(named: "premier-league")
cell.postTitleLabel.text = "Join our league"
cell.authorLabel.text = "Paul"
cell.authorImageView.image = UIImage(named: "author")
} else if indexPath.row == 1 {
cell.postImageView.image = UIImage(named: "example2")
cell.postTitleLabel.text = "Fixtures for the coming season"
cell.authorLabel.text = "Paul"
cell.authorImageView.image = UIImage(named: "author")
} else {
cell.postImageView.image = UIImage(named: "example3")
cell.postTitleLabel.text = "New App for the new season"
cell.authorLabel.text = "Paul"
cell.authorImageView.image = UIImage(named: "author")
}
return cell
}
答案 0 :(得分:0)
好的,你需要理解的是上面显示的方法cellForRowAtIndexPath
,是重复调用的方法,它填充了tableView的单元格 - 这就是它的全部内容。
因此,如果您有以下实现:
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! NewsTableViewCell
// Configure the cell...
cell.textLabel.text = "Hello"
return cell
}
然后每个单元格的textLabel
都会填充单词" hello"。
扩展这个你需要做的就是用一个数组(或其他对象)填充你想要在tableView中显示的数据(即一个String名称,Dates,一些其他数据的数组),然后设置一个属性(textLabel或其他)具有cellForRowAtIndexPath
中的数据的单元格。
最好的位是,每个indexPath.row对于每个阵列位置都是完美的模拟。所以数组和tableView很好地相辅相成。