Three years after its introduction, Apple's UI framework is still far from perfect and as such should not be used to build business applications in 2022. In this article, I take a look at backward compatibility, new features and, yes, bugs found in SwiftUI.
Learn the pros and cons of VIPER and its new evolution, VIP listed, and choose the proper Xcode design pattern for your iOS application.
App Tracking Transparency is a must for iOS apps with access to websites. Learn how to implement it in your Swift project from this article!
You don’t have to limit your Xcode project to just one app. Thanks to Apple, you can build multiple apps based on one project. This can be done via targets. In this tutorial, I’ll show you how to add many targets to an Xcode project. Not only new apps but also extensions, widgets, etc. Let’s see, how it works.
Learn how deep links and universal links differ from each other, spot their most important pros and cons, and, last but not least, figure out how to handle them both in iOS applications built with Swift!
In this tutorial, you’ll learn, how to share images, text (or even UIView) from your iOS application on popular social media platforms and services by using Swift.
Firebase Events can enhance your experience with Google Analytics. Are you an iOS developer who likes to measure your app’s adoption, UX, etc.? Read this tutorial and get to know how your mobile application is used, and monitor custom events.
Handling Google Cast support in Swift isn’t hard, but Google does not provide enough information on how to cast video or music from your app to Chromecast devices. In this tutorial, I will show you, how to handle it. Without default Google’s ViewControllers, just from your own controls.
Curious how to create a radio button in a mobile application built with Swift, but without using Storyboards? Read this short tutorial.
In this tutorial I’d like to show you how to present
UIButton over all visible views in your mobile app. This solution is designed for iOS 13 and newer versions, so it can be implemented in