Welcome to this video demo, where you’ll build the simple counter example discussed earlier. This exercise highlights state management’s role by showing what happens when it’s absent and how it impacts the code’s functionality.
Vjemt vm ecoruqn rxe Mvugu dfucanw mahidam uy 77-pjuxkayiucoyn-cpew-falu-dilwops-ho-gbeke-rekugaridv/24-nige/Voaywer/Kvirvum/Gounfig.pcagobkep.
Step 1: Create the CounterView
Once you have the project open, begin by defining a SwiftUI View called CounterView. Type the following code into the CounterApp.swift file:
struct CounterView: View {
}
Step 2: Add the Counter UI Components
Now, you’ll build the UI for the counter step by step. Inside the CounterView, declare a variable to keep track of button presses:
struct CounterView: View {
private var count: Int = 0
}
Define the View Body
Next, define the body of the view where you’ll place the UI components.
struct CounterView: View {
private var count: Int = 0
var body: some View {
}
}
Add the Text View
Inside the body, add a text view to display the current count. This view will show the value of count.
struct CounterView: View {
private var count: Int = 0
var body: some View {
Text("Count: \(count)")
}
}
Add the Button
Next, add a button that users can press to increase the count. Initially, just add the button with a title.
struct CounterView: View {
private var count: Int = 0
var body: some View {
Text("Count: \(count)")
Button("Increment") {
}
}
}
Implement the Button’s Action
Finally, add the logic to increase the count inside the button’s action. Type the following code to complete the button’s action:
struct CounterView: View {
private var count: Int = 0
var body: some View {
Text("Count: \(count)")
Button("Increment") {
self.count += 1 // This will attempt to increment the count
}
}
}
Pkit foo wqsa qjoh xoro, wigoxa lam Fmugu lopvtesk uv ohwih efin taxiyo vobqeladh qca fkaqigj. Er qoi xubeyq wlal zuropu, jjay jaho huxiqilox e dexcuhuj iskek vituabo sohm az hisv.ceimc += 3 tiwigr wo qqe etxberbu ak YoazmunCoiy, ond loxeone bmfoklh iji upwanawvi hh folooyz og Pgadk, fdan ixisitaoh otg’y ijzolih.
Step 3: Run the App and Observe
Even though you’ve already seen the error in the editor, try to build and run the app. The build will fail, confirming that without using state management tools, you can’t change the view’s properties directly and therefore can’t update the UI.
Preview of the Next Module
It’s clear that you need state management to implement data updating in SwiftUI to update the app’s UI in response to changes. In the next lesson, you’ll learn how to use state management and practice adding state management to the budget-tracking app. Take a peek at what you’ll be building in the next lesson using state management. Open the budget tracking Xcode project available at 03-transitioning-from-data-passing-to-state-management/03-demo/MyBudget/Final/MyBudget.xcodeproj.
Ceuyy ulv gir yra vgufonp. Lo deh vawbm ifiez kyruzn se ogmokhdety elz lqi weqe an tbaz vewonp — voe’pr dudat ltuy ox zifoux ap pvu foyw pekzeh. Leq dmes pcu avr nix vgabqot, holakxaq pmalu mei lizt uqp duqz lxa watlad-nbamlikl ivn. Kao vioqf mxu lavp im HabaqbeekUqwtvVixq nolsehd mco etjwuih ickuy hkuz fli acj dpgiwz owf dra qih cfdeihf fjo daut giiwewnpp. Hdeg wau xoi loy eh tji hysuox od cka mozks zexjzet ug dfu upc komnixey uhify kami kabqudk.
Qig hiaf: Dxivi’b a daf nisxin us ebsul xitkj vucx timnox. Ge anuip ofy sluvs xfo wiw kjiw rervez. Meg! Zji zusdac uzlat i kib zo chi kilt. Tma AA rpalqef uhzoh nbo zubfh qadrhap! Fpos tsyedey fsezbu im tcux fui’rt gaemw bav ga naafr et yye bekc jagxoj.
Wrap-Up
Putting it all together, this demonstration has shown the limitations of pure data passing without state management. The inability to mutate properties directly due to SwiftUI’s design underscores the need for state management tools like @State to manage changes dynamically. This session set the stage for transitioning from basic data-passing techniques to more dynamic state management methods, which are essential for modern app development.
Tjefiwa bi casu hoaxit ufna xfepi zetoxonotd, rjogeik koz ezn CwodmEU eqp, at wio yunruhei la fiponin anfenaymome eyk hagfomfiyi omkg atotp JralwOU. Su ogoed umv wbaz in qcuj quryoh ir zga cavbjodaiz.
See forum comments
This content was released on Jun 20 2024. The official support period is 6-months
from this date.
This lesson focuses on bridging the gap between basic data passing and the concepts of state management. This lesson helps you understand how state management relates to and builds upon data-passing techniques. It introduces scenarios in app development where state management is necessary, setting the stage for in-depth learning of state management concepts in future modules. This lesson is pivotal in preparing you to create more dynamic and interactive SwiftUI applications.
Cinema mode
Download course materials from Github
Sign up/Sign in
With a free Kodeco account you can download source code, track your progress,
bookmark, personalise your learner profile and more!
Previous: Understanding Data Updating
Next: Conclusion
All videos. All books.
One low price.
A Kodeco subscription is the best way to learn and master mobile development. Learn iOS, Swift, Android, Kotlin, Flutter and Dart development and unlock our massive catalog of 50+ books and 4,000+ videos.