我用它创建了一个表和一个搜索栏控制器。我使用了一个结构来创建表内容。我只想将数据存储在变量中的选定单元格中。我是一个新的iOS开发者。请帮助:) TIA
//my struct
import Foundation
struct areas
{
let name : String
}
// table contents
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = self.tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! UITableViewCell
var place :areas
if tableView == self.searchDisplayController!.searchResultsTableView{
place = filteredareas[indexPath.row]
}
else{
place = places[indexPath.row]
}
cell.textLabel!.text = place.name
cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator
return cell
}
如何使用didSelectRowAtIndexPath来了解单击的单元格的内容?
答案 0 :(得分:1)
单击tableviewcell时,会调用tableviewdelegate方法didSelectRowAtIndexPath,该方法为您提供indexPath,以便您可以按如下方式访问数组中的行:
var place: areas
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
place = filteredareas[indexPath.row]
}
因此每次单击tableview单元格时,都会调用上面的委托方法&适当的变量将根据indexPath.row
存储到位答案 1 :(得分:-1)
试试;
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
var place: areas
place = filteredareas[indexPath.row]
// do with place whatever you want
}