使用swift在UITableView中显示文本字段文本

时间:2015-05-08 12:30:54

标签: ios uitableview swift

我在快速编程方面非常新。 我只是尝试了一些文本字段的功能。 只想在UItableView中显示文本字段值。 陷入这段代码 请检查出来.... 并给出解决方案

 import UIKit

 class langViewController: UIViewController {
 var txt = ""
 let simpleTableIdentifier = "TableViewCell";
 @IBOutlet weak var txtlang: UITextField!

 @IBOutlet weak var langTableView: UITableView!

 override func viewDidLoad() {
 super.viewDidLoad()

   }

 override func didReceiveMemoryWarning() {
  super.didReceiveMemoryWarning()
   }
 @IBAction func addButtonTapped(sender: AnyObject)
 {
 txt = txtlang.text
  self.langTableView.reloadData()

  langData.append(txt)
  print(langData)
  txtlang.resignFirstResponder()

   }
     func tableView(tableView: UITableView!,                      cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell! {
    let cell = tableView.dequeueReusableCellWithIdentifier(simpleTableIdentifier) as UITableViewCell

    cell.textLabel?.text = txt

    return cell;

 }

2 个答案:

答案 0 :(得分:1)

要更新表格查看单元格,您必须调用reloadData()。所以你必须做这样的事情:

1。在您的类定义开始的位置声明txt变量:

var txt = ""

2。在您的按钮处理程序中调用reloadData()来更新您的单元格。

@IBAction func addButtonTapped(sender: AnyObject) {
    txt = txtlang.text
    self.tableView.reloadData()
}

3. 将文字设置为单元格的标签:

func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell! {
    let cell = tableView.dequeueReusableCellWithIdentifier(simpleTableIdentifier) as! UITableViewCell

    cell.textLabel?.text = txt

    return cell;
}

答案 1 :(得分:0)

谢谢#flashadvanced 我正在使用文本字段和tableview 我试图从textfield中获取tableView中的文本。在建议#flashadvanced之后,我做到了。 我的代码是:

class langViewController: UIViewController,UITableViewDelegate, UITableViewDataSource{
  var txt = ""
 let simpleTableIdentifier = "TableViewCell";
@IBOutlet weak var txtlang: UITextField!

@IBOutlet weak var langTableView: UITableView!

override func viewDidLoad() {
    super.viewDidLoad()
          self.langTableView.registerClass(UITableViewCell.self, forCellReuseIdentifier: "cell")
    self.langTableView.dataSource = self

       }

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
       }

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return langData.count
}
func  tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell:UITableViewCell = self.langTableView
        .dequeueReusableCellWithIdentifier("cell") as UITableViewCell

    cell.textLabel?.text = langData[indexPath.row]

    return cell
}


@IBAction func addButtonTapped(sender: AnyObject)
{
    txt = txtlang.text


    langData.append(txt)
    print(langData)
    txtlang.resignFirstResponder()
    self.langTableView.reloadData()


}