SwiftUI Stacks (HStack, VStack, ZStack)

SwiftUI provides three basic containers for arranging views: HStack, VStack, and ZStack. These stacks are used for creating simple and complex user interfaces. Let’s see how they work. VStack: Arranging Views Vertically A VStack (Vertical Stack) arranges its child views in a vertical line, one on top of the other. Example: VStack { Text("Top Item") Text("Middle Item") Text("Bottom Item") } This will display three text views stacked vertically. By default, views within a VStack are centered horizontally. You can control the alignment using the alignment parameter: ...

Swift Optionals

When you start learning Swift, one of the concepts you’ll encounter early on is optionals. Optionals are a powerful feature of Swift that help you write safer and more robust code by explicitly handling the possibility that a value might be missing. This post will explain what optionals are, why they are important, and how to work with them. What is an Optional? In Swift, an optional is a type that can hold either a value or no value at all. When an optional doesn’t have a value, it’s said to be nil. Think of it like a box: the box might contain an item, or it might be empty. ...

Swift Closures

Closures are self-contained pieces of code that you can store and pass around your codebase. Think of them as unnamed functions that can capture and store references to any constants and variables from the context in which they’re defined. If you’ve used functions in Swift, then you’ll soon grasp closures as they are actually a special case of closures. Closures are used very often in iOS development. You’ll see them in: completion handlers, animations, collection methods like map and filter, and SwiftUI view builders. Let’s look at them in more detail. ...

SwiftUI Text View

The role of Text view in SwiftUI is to display text (funny that). It can support simple labels, rich content or dynamic text. It is the SwiftUI equivalent to UILabel. Let’s get look at it in more detail. Creating Basic Text Simply pass a string to the Text initialiser: Text("Hello, SwiftUI!") You can also use string interpolation to create dynamic text: let userName = "Mike" Text("Welcome back, \(userName)!") ...

Swift Functions

Functions are reusable blocks of code that perform specific tasks. They’re fundamental to organising your code, avoiding repetition, and making your programs easier to understand and maintain. Think of a function as a mini-program that takes some input, does something useful with it, and optionally gives you back a result. In Swift, functions are first-class citizens—you can pass them around, store them in variables, and use them just like any other data type. ...

Swift Control Flow

Today we’ll look at control flow statements like if, for, and switch. These statements are the decision makers of Swift, allowing you to create dynamic software. Understanding control flow means you can write code that can branch, loop, and make decisions based on the data it encounters. What is Control Flow? Control flow determines the order in which your code executes. Instead of just running line by line from top to bottom, control flow lets you skip sections, repeat operations, or choose between different paths based on conditions. It’s what transforms a simple list of instructions into intelligent software. ...

Swift Operators

If you’ve been working with Swift for a while, you’ve probably been using operators without giving them much thought. They’re the symbols that let you perform calculations, compare values, and combine logic. Some examples include +, -, ==, and &&. Understanding operators properly will help you write cleaner, more expressive Swift code. What Are Operators? An operator is a symbol that tells Swift to perform a specific operation on one, two, or three values. They are like the verbs of programming, that perform action on data types ...

Swift Basic Data Types

If you’re just getting started with Swift, you’ll quickly realise that everything revolves around data—numbers, text, true/false values, lists of things. Understanding Swift’s basic data types is like learning the alphabet before you write sentences. This post covers the essential building blocks you’ll use in every Swift project. What are Data Types? A data type defines the kind of data you’re working with and what actions you can perform on it. Are you handling a number or a name? A true/false flag or a list of groceries? Swift is a strongly typed language, which means you must be clear about what types you’re working with. Swifts compiler will catch errors early if you make mistakes. ...

Swift Variables & Constants

Understanding variables and constants is one of the first steps in learning Swift. These building blocks will enable you to store, update, and manage data in your programs. In this post, we’ll cover what variables and constants are, how to use them, and why you should prefer one over the other depending on your use-case. What Are Variables? A variable is a named space in memory where you can store information that might change over time. ...