swift tabbar页面切换时刷新的方法

Posted Show Maker

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift tabbar页面切换时刷新的方法相关的知识,希望对你有一定的参考价值。

因为tabbar页面切换是不走

override func viewDidLoad()

只有你第一次切换的时候会走这个,之后再切换回你tabbar里面的这个页面的时候是不会走这个方法的。

所以你需要重写viewWillAppear!
举个例子,重写的写法:

你原本只有这个viewDidLoad

override func viewDidLoad() 
        super.viewDidLoad()
        self.tableView.rowHeight = 80
     
        let request = NSFetchRequest<NSFetchRequestResult>(entityName: "You")
                
        do 
                    
            let result = try managedObjectContext.fetch(request)
                    allScore = result as! [You]
         catch 
                    print("取出失败")
        
        
        
        if(allScore.isEmpty)
            let item: You
            item = NSEntityDescription.insertNewObject(forEntityName: "You", into: managedObjectContext) as! You
            item.totalScore = 0
            
            print("是空的,要再加一下")
        

        //获取总分的方法
        fetchYou()
        //获取事项item的方法
        fetchAllRewars()
  
        //再弄一次
        totalScore.title = String(allScore[0].totalScore)

    

我需要在这个代码的页面的上面写一个

 override func viewWillAppear(_ animated: Bool) 

        let request = NSFetchRequest<NSFetchRequestResult>(entityName: "You")
                  
          do 
                      
              let result = try managedObjectContext.fetch(request)
          //            allScore = result as! You
                      allScore = result as! [You]
           catch 
                      print("取出失败")
          

          if(allScore.isEmpty)
              let item: You
              item = NSEntityDescription.insertNewObject(forEntityName: "You", into: managedObjectContext) as! You
              item.totalScore = 75
          
  
          print("第一个有运行")
     
          //获取总分的方法
          fetchYou()
          //获取事项item的方法

          //再弄一次

          totalScore.title = String(allScore[0].totalScore)

    

然后每次切换tabbar里面的东西的时候就可以刷新了!!

以上是关于swift tabbar页面切换时刷新的方法的主要内容,如果未能解决你的问题,请参考以下文章

swift tabbar 跳转子页面时隐藏方法

导航到 Swift tabBar 时不会刷新视图

如何在单击 tabBar 项目 Swift 上刷新 tableView?

Swift - 以编程方式刷新约束

类似tabBar的切换页面效果(微信小程序)

Swift 支持某个页面横竖屏切换与强制横屏