iOS上的应用程序崩溃Swift在带有动画的索引路径中插入行

时间:2015-11-03 01:10:23

标签: ios swift

我有一个表视图控制器,包含5个部分的静态单元格。当点击该部分第一行中的UISegmentedControl对象时,我想在其中一个部分添加第二行(值更改操作函数)。我没有这方面的数据源,因为我只打算使用新行来显示文本字段。此时我只想看到一个带动画的空行,以便我可以稍后以编程方式添加文本字段。每当我点击分段控件时,iOS模拟器都会崩溃。没有错误消息。 Xcode 7 iOS 9.我查找了对类似查询的其他回复,但无法确定问题。任何帮助赞赏。我的代码如下。谢谢!

class MyTableViewController: UITableViewController, UITextFieldDelegate {

// init with 1 row in section 3 of table view. This row contains the segment 
// control object

 var rowsInMySection = 1

// index path for new row (second row) to be added to section 3 

var indexPath1 = NSIndexPath(forRow: 1, inSection: 3)

 override func numberOfSectionsInTableView(tableView: UITableView) -> Int {

    return 5
}

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {

    var rows = 1

    if section == 3 {
    rows = rowsInMySection

    }

    else {
    rows = 1
    }

    return rows
    }

 @IBAction func segmentControlTapped(sender: UISegmentedControl) {


 if(segmentControl.selectedSegmentIndex == 1)

 {

         self.tableView.beginUpdates()
         self.tableView.insertRowsAtIndexPaths([indexPath1],
            withRowAnimation : UITableViewRowAnimation.Automatic)
         self.rowsInMySection = 2

        self.tableView.endUpdates()

    }


   }

1 个答案:

答案 0 :(得分:1)

你回答了自己的问题。您有一个静态tableView,因此根据定义,它无法添加或删除。