使用委托方法保存自定义单元格文本字段

时间:2016-09-28 17:00:25

标签: ios delegates textfield tableviewcell

我无法理解如何使用委托方法从表格单元格中包含的文本字段中保存文本值。我正在使用一个单独的.xib文件,其中包含表格单元格的文本字段。下面是使用cellForRowAt索引路径的代码,但我不确定如何在textfield和包含此代码的swift文件之间进行通信。

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let currentCellDescriptor = getCellDescriptorForIndexPath(indexPath)
    if currentCellDescriptor["cellIdentifier"] as! String == "idEntranceFee" {
        func textFieldDidBeginEditing(textField: UITextField!) {

         }
    }

2 个答案:

答案 0 :(得分:0)

这是我用来处理这个问题的代码。

public class SuperDigit
{
    static int sum = 0;

    int main()
    {
        int n = 8596854;
        cout<<getSum(n);
    }

    int getSum(int n){
        sum=0;
        while (n > 0) {
            int rem;
            rem = n % 10;
            sum = sum + rem;
            n = n / 10;
            getSum(n);
        }
        return sum;
    }
}

这就是我的postsCell文件的样子。

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
    {
        tableView.registerNib(UINib(nibName: "PostsCell", bundle: nil), forCellReuseIdentifier: "PostsCell")
        postsCell = tableView.dequeueReusableCellWithIdentifier("PostsCell") as! PostsCell
        let song = album.objectAtIndex(indexPath.row) as! NSArray
        let songName = song[0] as? String
        postsCell.titleLabel.text = songName
return postsCell
    }

你的问题有点模糊,但这应该会帮助你。如果您有任何疑问,请回复。

答案 1 :(得分:0)

在每个UITableViewCell的情况下,你必须为ViewController中的每个UITextfield设置一个委托。

textField.delegate = self

然后在ViewContoller中实现UITextFieldDelegate:

extension YourViewController: UITextFieldDelegate {
  func textFieldDidBeginEditing(textField: UITextField) {

  }
  func tableView(tableView: UITableView, didEndEditingRowAtIndexPath  indexPath: NSIndexPath) {

  }
}