首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TableView NSException

TableView NSException
EN

Stack Overflow用户
提问于 2017-02-02 11:19:44
回答 2查看 1.6K关注 0票数 3

我是Swift的新手,我使用ObjectMapper解析我的JSON,但是我希望数据显示在TableView中。但我有个问题:

libc++abi.dylib:以NSException类型的未明确例外结束

我是在numberOfRowsInSection方法之后得到的。我的数组不是零,数组有2193个元素,我不明白为什么会发生这种情况。

它是我解析JSON的代码:

代码语言:javascript
复制
   let timeStamp = NSNumber(value: Date().timeIntervalSinceNow)

    var programs = [PrograToDayModel]()

    override func viewDidLoad() {
        super.viewDidLoad()

        super.viewDidLoad()
        let timeStamp = NSNumber(value: Date().timeIntervalSinceNow)
        self.downloadPrograms(for: timeStamp)

    }

    func downloadPrograms(for timestamp: NSNumber) {

        Alamofire.request("http://52.50.138.211:8080/ChanelAPI/programs/\(timestamp)").responseArray { (response: DataResponse<[PrograToDayModel]>) in

            let programlArray = response.result.value

            if let programlArray = programlArray {
                for program in programlArray {

                    self.programs.append(program)
                    print(program.title as Any)
                }


            }
            DispatchQueue.main.async {
                self.tableView.reloadData()
            }
        }
    }

我在控制台中打印元素是很好的:

我的表代码:

代码语言:javascript
复制
    // MARK: - Table view data source

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

    override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        // #warning Incomplete implementation, return the number of rows
         print(self.programs.count as Any)
        return self.programs.count

    }


    override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "ProgramTableViewCell", for: indexPath) as! ProgramTableViewCell

        cell.title.text = self.programs[indexPath.row].title

        return cell
    }
}

所有标识符,我使用制表符栏,tableView,tableViewCell如何解决这个问题?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-02-02 12:01:07

为了找出问题,你可以试试这个-

这可能是这个问题的一个原因。

因此,转到Main.storyboard,右键单击电话大纲顶部的View,并删除任何带有黄色标志的插座(如果有的话)。

票数 3
EN

Stack Overflow用户

发布于 2017-02-03 00:22:40

在尝试添加节/行数时,尝试初始化uitableviewcontroller时,我也会遇到类似的非描述性错误。您注册了tableview单元格类吗?我看到您已经创建了一个自定义的tableview单元格,所以如果没有将其注册到tableview中,可能会导致此错误。

代码语言:javascript
复制
   tableView.register("ProgramTableViewCell".self, forCellReuseIdentifier: "ProgramTableViewCell")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42000855

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档