Today was a much more productive day. ☺️ Before bed yesterday, I got an idea on how to fix my problem with the custom back button - I had to use it on details view, as I couldn’t change the color of the system one just for one view. It happened that it worked!
#CodingBreakthrough #BuildInPublic
Till now, I set tint color in the root view, so that it was propagated to all views in the app. Then for views I wanted to override the color, I was setting it manually. That wasn’t the greatest solution, but the one I could live with. However, it caused other strange problems as well.
Buttons and Labels were tinted correctly, but as soon as I put the app into the background and came back, the icons were always tinted with the globally set tint color. I had to manually set the color for each icon. That one I couldn’t live with, but had no choice.
#BugFixing #UI #UX #DeveloperLife
Until today! 🥳 I was already using a global observable object that’s responsible for tinting the app. I just added a second field that allows it to override the color for the selected view.
#SwiftUIHacks
That wasn’t the end of the story. Setting and resetting the color in onAppear/onDisappear was too visible to the user. I had to use UIKit and make the change happen in willAppear/willDisappear methods. Why do we still have to use for such things?!
#SwiftUI #UIKit
I’m really happy I managed to fix that, even though the change is barely visible to the end user. ☺️ Having fixed that, I tackled the groups handling and finished the whole flow.
#SmallWinsBigImpact #HabitTrackerApp
I haven’t changed much since yesterday. Just decided that changes in groups inside settings view are permanent even when user dismisses the settings modal or presses “Cancel” on main setting sheet. It’s kind of inconsistent, but I couldn’t think of a better solution for now.
#DesignTradeoffs
With all that done, I sent a new version to #AppStoreConnect. I’ll first send a new version to #TestFlight, and tomorrow I’ll work on new screenshots for the proper app update. If you’d like to join the tests, grab the link: https://testflight.apple.com/join/HsEDRG4x
#BetaTesting
Join the Spark: Goal & Habit Builder beta

Available on iOS

It’s amazing how much one can do if only they don’t take the #SteamDeck into their hands first thing after breakfast… 😆