Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
255 views
in Technique[技术] by (71.8m points)

ios - SwitfUI - how to update the view after certain action ,or time , or when the coreData has any changes

I have a list of quotes and you can save your favorites to CoreData persistent store , or delete them.

But when you delete them from the favorites list , the quotes list don't update fast to show the Boolean value (isFavorited) , it's a lot of code to add here but all i want is for quotes view to update after certain time , or action.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

How are you accessing this data in your SwiftUI View?

You can power a SwiftUI view from a fetch request directly.

Example:

struct FavoriteQuotesView: View {
  @FetchRequest(entity: Quote.entity(), sortDescriptors: [], predicate: NSPredicate(format: "isFavorited == true")) var quotes: FetchedResults<Quote>

  var body: some View {
    List {
      ForEach(quotes) { quote in 
        Text(quote.text)
      }
    }
  }
}

As data is updated that affects that query, it will update your SwiftUI view.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...