在ViewController中向UITableView添加数据/行。迅速

时间:2016-08-07 14:54:54

标签: ios swift xcode uitableview

如何在UIViewController中填充UITableView? UITableView是动态的,并使用原型单元格。

(使用Swift)

This is what I have

2 个答案:

答案 0 :(得分:2)

请执行以下操作:

import UIKit

class tableViewOne: UIViewController{

    @IBOutlet var tableView: UITableView!
    // your data
    var dummyData = ["data 0","data 1","data 2"]

    override func viewDidLoad() {
        super.viewDidLoad()

    }

}

extension tableViewOne: UITableViewDataSource, UITableViewDelegate {
    // Define no of rows in your tableView
    func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return dummyData.count
    }

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

        cell.textLabel!.text = dummyData[indexPath.row]

        return cell;
    }

}

注意:不要忘记设置DataSourceDelegate的{​​{1}}和UITableView。如果已在storyboard中定义,则无需以编程方式定义。

答案 1 :(得分:1)

  1. 您需要按住class PostsTableSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { $faker = Faker::create(); foreach (range(1,5) as $index) { DB::table('posts')->insert([ 'title' => $faker->catchPhrase, 'content' => $faker->paragraph, 'created_at' => $faker->dateTime($max = 'now'), 'updated_at' => $faker->dateTime($max = 'now'), ]); } } } table view拖到视图控制器中。

  2. 在View Controller中的viewDidLoad()中,您需要设置委托和数据源:

    tableView.dataSource = self
    tableView.delegate = self
    
  3. 您的View Controller需要实现:

    class YourViewController : UITableViewDelegate, UITableViewDataSource
    
  4. 现在,您的ViewController类需要实现返回单元格/行数等的相关方法。

    祝你好运。