首页 文章

Swift:TableviewController中的三个原型单元格无法查看

提问于
浏览
2

我想在tableview控制器中创建三个单元格,我在storyboard中添加了三个原型单元格,它不会崩溃,但它会查看一个空的tableview .

super.viewDidLoad()

    // Uncomment the following line to preserve selection between presentations
    // self.clearsSelectionOnViewWillAppear = false

    // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
    // self.navigationItem.rightBarButtonItem = self.editButtonItem()
    let nib1 = UINib(nibName: "one", bundle: nil)
    tableView.registerNib(nib1, forCellReuseIdentifier: "one")
    let nib2 = UINib(nibName: "two", bundle: nil)
    tableView.registerNib(nib2, forCellReuseIdentifier: "two")
    let nib3 = UINib(nibName: "three", bundle: nil)

    tableView.registerNib(nib3, forCellReuseIdentifier: "three")
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

// MARK: - Table view data source

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

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


override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

// let cell = tableView.dequeueReusableCellWithIdentifier(“reuseIdentifier”,forIndexPath:indexPath)var cell:UITableViewCell!

switch (indexPath.row){
    case 0 :
        cell = tableView.dequeueReusableCellWithIdentifier("one") as! one
        cell.textLabel?.text = "book1"
        break;
    case 1:
        cell = tableView.dequeueReusableCellWithIdentifier("two") as! two
          cell.textLabel?.text = "book2"
        break;
    case 2 :
        cell = tableView.dequeueReusableCellWithIdentifier("three") as! three
          cell.textLabel?.text = "book3"

    default:
        break;

    }

    // Configure the cell...

    return cell
}

1 回答

  • 1

    由于您总是希望在表视图中显示3个单元格,因此应使用"Static Cells"样式 UITableView . 如果选择适当的 UITableView 并查看“属性”检查器,则可以在故事板中进行设置 .

    然后,拖出正确数量的单元格并在Storyboard中配置它们 . 如果需要以编程方式操作它们或其内容,请将每个单元格连接到 IBOutlet .

    请注意,由于静态表视图仅允许在 UITableViewController 中,因此您可能需要更改包含问题中包含的代码的类 .

相关问题