2016-07-02 1 views
0

私はViewController.swiftとTableViewCell.swiftファイルを持っています。メインのストーリーボードには、上部にテキストフィールド、下部にテーブルビューを持つ基本的なView Controllerがあります。私は、テーブルビュー内にプロトタイプセルを持っており、その識別子は "セル"であり、クラスは "TableViewCell"です。Swift:次の利用可能なTable Viewセルにテキストフィールドの内容を入力するにはどうすればよいですか?

私は、テキストフィールドをタップして文字列を入力し、キーパッドのReturnをクリックします。次に、その文字列を次の使用可能なTable Viewセルに貼り付ける(このとき、次のセルの下位にセルが表示されるたびに)。

更に上のファイルが既に持っているという基本的なコードを超えて、私は次のようしている:

ViewController.swiftで

:私は理解したよう

class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource { 

@IBOutlet weak var textField: UITextField! 
@IBOutlet weak var tableView: UITableView! 

func numberOfSectionsInTableView(tableView: UITableView) -> Int { 
    // #warning Incomplete implementation, return the number of sections 
    return 0 
} 

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 
    // #warning Incomplete implementation, return the number of rows 
    return 0 
} 

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { 
let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) 

    let textFromField = textField.text 
    cell.textLabel!.text = textFromField 
    return cell } 
+0

中の各項目を返す必要があります。新しい値を追加するたびに、それを配列に追加し、新しい行をテーブルビューに挿入します。 – Paulw11

答えて

0

delegateを使用してください。

  1. Caculate rowWillFillによってindexPath.rowに記入してください。
  2. TableViewCellはデリゲートを実装しています。

    IF(cell_index = indexPath.row) {

    rowWillFill += 1 
    
    tableViewCell.textLabel.text = String 
    

    }

  3. そしてtableView.updateCellAtIndexPath グッドラックによりセル更新!

    あなたが次にあなたは、データソースに続いて、アレイ

    array.append(textField.text) 
    

    にあなたをテキストフィールドのテキスト値を追加する文字列

    var array = [String] 
    

    の配列を必要としている変数が必要

1

セクションの数(あなたのケースでは1に見える)とセクションの行数を返す必要があります

array.count 

はその後cellForRowAtIndexPathで、あなたはあなたがテーブルビューにデータを提供する配列を必要とする配列

let item = array[indexPath.row] 
cell.textLabel.text = item 
return cell 
関連する問題