yego.me
💡 Stop wasting time. Read Youtube instead of watch. Download Chrome Extension

Objective-C iPhone Programming Lesson 6 - Saving Basic Data


3m read
·Nov 3, 2024

Processing might take a few minutes. Refresh later.

Hey guys, this is my kids along with a video on iPhone development. So this is our sixth tutorial, and in this tutorial I'm going to be showing you how to save data that your app stores.

So we're going to be saving the state of a switch, so whether it's switched on or off, and we'll be saving the kind of the progress of a slider. So let's create a new project, and when we go to view-based application, I'll call it Save Test.

All right, and I'll just type in the interface builder stuff. We're going to have to IV outlets, so you know we're going to have both a UI slider, call it slide A, and we're going to have a UI switch, we'll call it switch 1. We're going to have one universal action that's going to be data changed, and both objects are going to call this.

So I'll show you what I mean in a segment. We'll go into the interface builder project, and we're going to hook everything up like you would normally expect. So we will drag this in and drag listen, and we're going to hook obviously this up, and we're going to hook a slider up like, right let's slide off like this.

And here's the tricky part; we want both of these objects when the data gets changed to call our data changed. So if we go in the inspector and we say value changed, we can drag it to data changed. Now here's the cool thing: multiple objects can call the same action.

So here on the slider value change, we're also going to call the data changed, and I think that's pretty cool. So here we go. Now let's make this not out of 0 just for usability, and make this that off at off.

And now we will implement our data changed method. Let's go here and we're going to use nice user defaults to do this. So we're going to declare user defaults and make it NSUserDefaults standard. Use defaults, we're going to see default set object and this number. Remember, with poor switch 1 is on, and you'll see what this 1000 a second.

And I'll save it for the key s1. And in viewDidLoad, we're going to load the same thing. So I'm just going to copy the bolts, paste in our viewDidLoad. I'm going to say switch on set on default object for key s1 will value.

Okay, an object for key needs an object. It can't take a bowl or an integer or a float to any scalar; it needs to take a pointer to an Objective-C object. So that's why we're using NSNumber to do that. NSNumber is the numbers wrapper class or the scalar wrapper class, I'll call it anyway.

So we're doing that work, and we have all that stuff set up, so now it should see the state of our switch. So if you're on it, it's gonna open the simulator, and here we will set our switch to on.

And now if we kill it, just to make this on the Watson, the iPad simulator, since the kids very strange, now it's on. And if you sign it back to off, how about we slide it on again? We close it and we open it one more time, it'll be on.

So there we go, we know it works. Ah, it's not just multitasking that's doing it. So let's also do the progress indicator, and this is quite similar. Here on our seed methods, we'll say set object, and it's number number with holding number float slider 1 and leave you can just do, can you do value?

All right, hopefully, that's fine. I'll call sl1; the variable names can get confusing when we say slider 1 set value defaults on your freaky ass at water float.

Yeah, okay, and two. Now if we run it, it should save also our slider state. So it's running; let's put our slider. It's Amanda thing; it's trying to switch off, close it, kill it. You know, so clean it's running in the background even though it's not, because that's how I oh I stairs.

And if we run it now, you'll have the state we see, and it's pretty awesome that way. So here's how the falls works; we're just setting an object and reading that object later on.

Um, you can also do nifty things like given default values for that, but that's for a different tutorial some other day. And before this tutorial is over, I have a question for all of you guys because I know a lot of my subscribers are from the age of maybe 12 to 16.

And I want to know who here has Black Ops, because, um, I just got the game; I played it a little bit, and it doesn't seem that great...

More Articles

View All
The Danger and Excitement of Underwater Cave Diving | Short Film Showcase
We come here every winter, bringing tons of dive stuff, going into the mountains. During this expedition, Darrell, we get to explore this cave system that we have found here. This is the longest underwater cave in Sweden, and we know there’s going to be s…
The Role of Role Models | StarTalk
[Music] It’s often said that it’s easier to be something if you can see it; if you can imagine yourself in that position. Role models have always played an important role in that. Role models have that role. I have a slightly contrarian view of role mode…
The Meaning of Life
The meaning of life question is kind of a nonsense question. Any end goal will just lead to kind of another goal, lead to another goal. We just play games in life, right? You grow up, you’re playing the school game. You’re playing the social game, then yo…
Vitalik: Ethereum, Part 2
Vitalik, I want to ask you a little bit about how your role has evolved since it began in Ethereum. So, in the very beginning, before all of this, of course, you were once the uppity young entrepreneur. It’s been, what, six, seven years now? You’ve moved …
A Crime Against Childhood
There is no greater human joy than waking up to a winter wonderland that, with its frosty magic, also cancelled school. Well, no more. Because schools are cancelling snow days. Some school systems have decided, “This way when there’s too much snow to phys…
Finding z-score for a percentile | AP Statistics | Khan Academy
The distribution of resting pulse rates of all students at Santa Maria High School was approximately normal, with a mean of 80 beats per minute and a standard deviation of nine beats per minute. The school nurse plans to provide additional screening to st…