Last week I spent sometime on building an app that I could share wiht my son for him to learn about the world. This was after I spent time ramping up on SwiftUI. I spent some time last week on deciding what I did like to add to the app. I spent some time breadboarding and I think I arrived at a good structure of what I should add to the app.
Apart from having a simple list of all countries, I ended up adding another list view that grouped the countries by Continents.
When you are trying to learn things like these, its aways helpful to break the order and test your self. Keeping that in mind, I provided two views. A flash card view and another view to take a quiz and see if you guess the flag correctly or not.
While making the flash card view, and being new to SwiftUI, I couldn't figure out what was the right approach for building this view. I ended up building this using
TabView(selection: $selectedItem) instead of building a UI that shows a stack of cards. If anyone has a recommendation to build this view, I'm all ears ☺️. In any case, I liked the way things turned out in this view and pretty stoked about it.
With the Quiz view I was very clear with two things. Multi-choice and a way to communicate how is their progress. I endued up using a progress bar to show how many guess the user has got correct vs wrong as well as build a view that shows the numbers. And of course an option to reset the scores. For this, I learned how to make UI extensions and cerated a new
ProgressViewStyle. Nothing fancy, but for a first timer, I was just excited to build this out.
I have been testing my app for the last few days with friends & family and as of last night I have submitted my app to the AppStore 🤞🏽.