在swift

时间:2016-08-05 14:16:47

标签: ios swift uitableview

我有一个自定义单元格,其中包含 UITextView ,而 outlet UITextView位于customCell文件中。

现在我的 viewController 我有 tableView ,我创建并将该自定义单元格添加到我的表格中。 在此之后,我无法访问 UITextView 并在customCell文件中将其数据作为其outlet。我无法将插座移至 viewController ,因为我需要它。 我该怎么做(访问UITextView中的viewController

2 个答案:

答案 0 :(得分:5)

您可以使用textView设置单元格viewController的委托,首先在cellForRowAtIndexPath

中设置其委托
func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell!  {
    let cell = tableView.dequeueReusableCellWithIdentifier("Cell") as! CustomTableCell 
    cell.textView.delegate = self
    cell.textView.tag = indexPath.row //In case you have multiple textView
    return cell
}

现在,您可以在其UITextViewDelegate方法中获取此textView。

func textViewDidBeginEditing(textView: UITextView) {
    print(textView.text)
} 

答案 1 :(得分:0)

您需要在viewController中声明一个本地变量,以获取UITextView的数据。然后实施tableView s delegate方法

 //this is your local variable declared in viewCOntroller
 var myTextViewText: String?

//And this is your delegate method
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    let cell = tableView.cellForRowAtIndexPath(indexPath) as! YourCell
    myTextViewText = cell.textView.text //here you will get the text of your cell's textView
}