Scott iOS journal

Mikael

I had version 12.0

Decided to upgrade to next version of Xcode. Involved upgrading Mac OS.

Cannot get version 15 of Xcode without update Mac OS. Moved around the Xcode since I did not have enough space on my small 125 Gb. Went thru the about this Mac, storage, manage. Did delete the recommended. Backed up my project files after getting a external ssd to copy my files to.

After the Mac OS and Xcode update (15) tried to run app on physical device. Says something about certificates. Went to my iOS developer account and deleted unused items. Ran it on the iPad. Works without problems.

Going thru pop up lesson in quiz app. The iboutlet connectors not working. Cannot drag and get the code to show up when I ctrl click.

Researching.

Download DevCleaner for Xcode, it’s a MacOS app that cleans up tons of old Xcode logs!
It saved me 60GB the first time I ran it!

So everything is working now? You can run it on your physical device?

You’re dragging from a button to the code and it isn’t working?

The storyboard is connected and says it belongs to the proper view controller in the inspector on the right?
Like how you say this storyboard VC is connected to the file ViewController

Thanks for the reply. Will try the Devcleaner later. Xcode does have a cache listed when you go to about Mac - storage - manage - developer. Backed up my files and delete this. Seems fine now.

Did some experimentation. IBoutlets working but only appear at the top of the code block. If I try to drag it into the main body of the code the line and dot on the side do not appear. Seems like Xcode will only allow you to put the IBoutlets in specific places.

Now got a different problem. Trying to add popup to the quiz app. Something about

undefined key. Not sure what this means.

Researching.

PS. I was able to run it on physical device after I deleted several other test apps listed in the dev account. Unable to recreate the iOS developer account. Seems like the account have been merged together.

Searched the forums. Another member had exact same problem. They deleted the resultViewController in the storyboard.

Deleted the resultViewController. Started the view from scratch. Added the dimView, labels, buttons, stack view etc.

Got the popup to appear. Recreated the resultViewController in the main storyboard. Reconnected the iboutlets and changed the story id to resultVC. Left the constraints to the default. Removed any conflicts that blocked the compile of the project.

New problem. M5 L8. customizing the view controller popup.
Got the popup to advance the question but the answers remain the same.

Researching.

Fixed that problem. Moved the function where it calls the next question.

New challenge. The dialog box text remain the same as the last question.

Researching.

Going thru the challenge.

Quiz app.

If I answer the question correctly the dialog box says correct. The feedback box is related to the question. When I answer the second question the first questions dialog box remains the same. It is not related to the second question.

It seems the dialog box is not fetching the next questions data and putting into the correct spots. Placed breakpoint thru the resultviewcontroller and view controller.swift files. Stepped thru the code. Seems fine.

Went thru the videos again. Seems fine. Not sure if I placed the code in some sections in the wrong controller. I will go thru it again with fresh eyes tomorrow.

Be sure to check your code to the provided solution!

Also feel free to make a new “App Development” post if you’re having trouble with something specific

Checked the solution against my code.

Two difference I spotted.

In the view controller when the result dialog box is initialized

I had.

resultDialog = storyboard?.instantiateViewController(withIdentifier: “ResultVC”) as? ResultViewController

The solutions had

resultDialog = storyboard?.instantiateViewController(identifier: “ResultVC”) as? ResultViewController

The second difference was I put the displayQuestion inside the wrong brackets in the dialogDismissed.

It was in the main body of the function not inside of one of the if then else branches.

Still have the problem of the middle section of the dialog box not changing when I answer the questions. Still says var is the correct answer for both questions.

I figured out why the text of the dialog box doesn’t change. My json data file had the same answer. Changed it and voila fixed!!

Sometime the tree is the forest or is it can’t see the forest for the trees…I forget.

Wondering if this still worked. Skimmed over some modules again to refresh my memory.