使用swift中的新元素更新tableview

问题描述 投票:0回答:2

所以我在numberOfRowsInSection中有这一块代码来改变根据按下的侧边栏选项显示的数量(一个不同的tableView)。当用户选择索引#1时,他们应该只看到获取请求中存在的行数。当我更改索引时,什么都不会更新,我猜这是因为它没有被刷新/更新。我应该使用什么代码来正确更新它以及它应放在何处?

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    // #warning Incomplete method implementation.
    // Return the number of rows in the section.
    if sidebarindex == 3{
    return feeds.count
    } else if sidebarindex == 2{
    return feeds.count
    } else if sidebarindex == 1{

        let moc = SwiftCoreDataHelper.managedObjectContext()
        var favNames: [String] = []
        let fetchRequestM = NSFetchRequest(entityName:"Favorite")
        if let favs = moc.executeFetchRequest(fetchRequestM, error: nil) as? [Favorite] {
            favNames = favs.map { $0.favoriteTitle }}

        if favNames.count != 0{
            return favNames.count
        }else{
            return 1
        }

    } else{
    return feeds.count
    }



}
ios uitableview swift rss
2个回答
1
投票

注意:IOS和Swift的初学者,所以请告诉我,如果我错了。但这是我试图回答你的问题:

用于刷新tableView中的数据的代码将是:

tableView.reloadData()

在没有看到代码的情况下,我无法确切地说出放置它的位置,但是一个有根据的猜测是将它放在按下侧栏项时被激活的功能中。例:

@IBAction func sideBarItem1Pressed(sender: UIButton) {
    // Set the index here
    tableView.reloadData()
}

如果您使用代码更新帖子,我可以确定它的去向。


0
投票

迅速4

func reloadTableData(){

   self.tableMyList.reloadData()
}
© www.soinside.com 2019 - 2024. All rights reserved.