Post

Replies

Boosts

Views

Activity

Reply to Advice needed on passing Count of records in rendered Mapview in Second View Controller to be displayed in First View Controller
What is the best way for the First View Controller to retrieve the count from the rendered map in the Second View Controller so that the count is displayed on the Dashboard to the User upon launching the App? It is hard to say what would the best for your app, as it depends on the details of your view controllers. So, this is just one example, but you can use sort of shared data container. Something like this: class DataContainer { static let shared = DataContainer() var countOfRecords: Int = 0 //... } class FirstViewController: UIViewController { let dataContainer = DataContainer.shared func someMethod() { let count = dataContainer.countOfRecords //... } } class SecondViewController: UIViewController { let dataContainer = DataContainer.shared func someAction() { //... dataContainer.countOfRecords = ... } }
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Jun ’21
Reply to Changing a fetch request
Thanks for showing your code. It would be better if it were properly formatted. (As the editing feature is limited in this site, you may need to add an answer to show additional info to your question.) Anyway, I will look into it when I'm ready.
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Jun ’21
Reply to Resources for getting started
You may find many resources to learn app development in Swift with Xcode, but Apple's books may be a good starting point. Swift Development Resources Check Intro to App Development with Swift or App Development with Swift. Unfortunately, the books may not be up-to-date, and you may find some difficulties to work with it using the latest Xcode. But the core part of them are very fine and can be a good help learning app development. And this site, the dev forums, would be a great help when you cannot solve some issues by yourself.
Topic: Programming Languages SubTopic: Swift Tags:
Jun ’21
Reply to Changing a fetch request
Your code is incomplete, so I cannot test, but can you try something like this: struct EditSocialView: View { @Environment(\.managedObjectContext) var managedObjectContext @Environment(\.presentationMode) var presentationMode var lodge: Lodge = getLodgeData() @State var lodgeId = -1 var body: some View { //... EditSocialList(lodgeId: lodgeId) .onAppear(perform: { self.lodgeId = lodge.id }) //... } } struct EditSocialList: View { var lodgeId: Int //this gets the list @FetchRequest var cdlodges: FetchedResults<CDLodge> init(lodgeId: Int) { self.lodgeId = lodgeId self._cdlodges = FetchRequest( entity: CDLodge.entity(), sortDescriptors: [ NSSortDescriptor(keyPath: \CDLodge.lodge, ascending: true), ], predicate: NSPredicate(format: "lodgeid == \(lodgeId)") ) } var body: some View { //use `cdlodges` here... } } With separating the parts depending on FetchedResults, you may be able to initialize the FetchRequest using lodgeId.
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Jun ’21
Reply to Sharesheet and iPads
Have you tried this: activityViewController.popoverPresentationController?.sourceView = sender (Assuming sender is a UIButton.) Seems iPadOS cannot find where to show the share sheet when you specify the whole view. By the way, you should better use Code Block rather than Text attachment when you show a code not too long.
Topic: Programming Languages SubTopic: Swift Tags:
Jun ’21
Reply to Check on FetchRequest not working
I tried putting the check after the request Seems you put the check after initializing FetchRequest, not after the request. It is hard to predict when exactly the request is made or when the result is updated. One possible solution would be like this: struct TestViewPage: View { var lodgeid: Int @Environment(\.managedObjectContext) var managedObjectContext var lodge: Lodge = getLodgeData() var favourite: Bool {!cdlodges.isEmpty} //<- //this gets the list @FetchRequest var cdlodges: FetchedResults<CDLodge> init(lodgeid: Int) { self.lodgeid = lodgeid self._cdlodges = FetchRequest( entity: CDLodge.entity(), sortDescriptors: [ NSSortDescriptor(keyPath: \CDLodge.lodge, ascending: true), ], predicate: NSPredicate(format: "lodgeid == \(lodgeid)") ) } var body: some View { NavigationView { ScrollView { VStack(alignment: .leading) { VStack { switch favourite { case false: Button(action: { ///save the lodge in core data //... }) { Image("favicon_off") } case true: Button(action: { ///delete the lodge from Core Data //... }) { Image("favicon_on") } } } } .padding() }///end of scrollview .navigationBarTitle("") .navigationBarHidden(true) } //end of navigationview } } With checking favourite dynamically, you would get the result you want. (Though, I omitted favourite = setFav(), which I cannot guess what you want to do with it...)
Topic: UI Frameworks SubTopic: SwiftUI Tags:
Jun ’21
Reply to Is C similar to Objective-c ?
will learning Objective-c be easy considering that I know C? Syntactically, Objective-C is an extension of C. So, some portion of Objective-C is exactly the same as C. Your experience of C would help learning such aspect of Objective-C. But the core part of Objective-C programming is made of Object Oriented class system, which you cannot find in C. If you do not have any knowledge about Object Oriented Programming, you may find hard difficulties in that part. If you have some knowledge about Smalltalk, it would help understanding OOP parts of Objective-C. Or if you know some OOP languages, such as Java or C#, that would also help learning Objective-C. Conclusion, your knowledge of C would help learning Objective-C, but whether it is easy or not would depend on your other experiences or your way of thinking.
Topic: Programming Languages SubTopic: Swift Tags:
Jun ’21
Reply to ProgressView Error
As far as I tried, your code shown did not cause the issue you described. (I needed to fill the first line import SwiftUI, but that had nothing to do with the error, I think.) Sometimes, Xcode might show some old bugs which was fixed already. Have you tried Clean Build Folder (Shift-Cmd-K) ? (Or you can choose it from Product menu.)
Topic: Programming Languages SubTopic: Swift Tags:
Jun ’21
Reply to If statement notification
Isn't this the same question as in your previous post? You should better reply to comments and answers to it before writing a duplicate post.
Jun ’21
Reply to Find My unable to connect to server
Please try again later. Have you taken enough time when you tried again? Apple's server related to WWDC may be getting too heavy and some services would not work properly. And anyway, iOS 15 beta is a beta version of a product and it may contain many flaws or bugs. If the issue continues even if you try it later (with enough interval), you should better send a bug report.
Jun ’21