Beginning Table Views

This is an alternative version of Your Second iOS and SwiftUI App - but instead of using SwiftUI to build the user interface, it uses UIKit's Table Views. By Brian Moakley.

Leave a rating/review
Save for later
Comments
Share

Part 1: Getting Started

01
Toggle description

Table views are an integeral part of iOS. In this video, you'll get an overview of them and what this course will cover.

Toggle description

This episode provides an overview of the app that you'll build in this course. You'll get a bird's eye view of the various features you'll implement to get it working.

Toggle description

You can either create a table view controller or a regular table view. Both have advantages and disadvantages. This video will walk you through them.

Toggle description

To display data, you need a table view cell but cells come with a few other features as well. This episode will get you started with them.

Toggle description

In this challenge you'll add a label to your cell and set the auto layout constraints. Sounds easy? Well, give it a try.

IndexPaths 4:36
Toggle description

IndexPath objects act as addresses in your table. In this video, you'll get an understanding of how they'll work.

Toggle description

With table views, one row is not enough. You'll need a lot more--and your challenge is to make this happen.

Toggle description

Table views use protocols so in this video, you'll get an overview of protocols and how they can be used.

Toggle description

A table view defines both a delegate and a datasource which is how you provide data and respond to events. This episode covers how they work.

Delegation 5:56
Toggle description

Delegation is a very important concept in iOS since it's used everywhere. In this video, you'll get an understanding of delegation from the ground up.

Conclusion 2:05
Toggle description

In this episode we'll review what we learned, what you can do to learn more, and what awaits in the next part.

Part 2: MVC

Toggle description

This episode will cover the basics of working with MVC and why learning MVC is crucial to being a successful iOS developer.

Toggle description

This episode review each major component of MVC. That is, the model, the view, and the controller.

Toggle description

Getting stated with MVC means creating your first model. In this episode, you'll create your model, then update your controller to use it.

Toggle description

While the controller works, the checkmarks are out of sync with the actual data. This episode will show how to fix the bug.

Toggle description

With one Checkmark instance created, there's only four more to go which also just happens to the topic of your challenge.

Toggle description

This episode has you create another model object to hold all the instances of your checkmarks. Introducing the todo list.

Toggle description

With your new todo list in hand, all you have to do is use. Your challenge is to implement it in your controller.

Toggle description

We're not even through the second part, and your controller is starting to get messy. In this episode, you'll break out the mop and do some code cleaning.

Conclusion 1:23
Toggle description

This video gives a review of MVC, then introduces you to the upcoming part on adding and deleting items.

Part 3: Adding and Deleting Items

Toggle description

So far your, users of your checklist app can't add or delete items. In this video, you'll get an overview on how that will be accomplished.

Toggle description

Navigation controllers are a means to display lots of view controllers in your app and you'll learn how to use them.

Toggle description

Navigation bars can take buttons for you to add interactivity. In your challenge, you'll add one to your app.

Toggle description

Now's the time to add new check-list items! This video will walk you through the process.

Toggle description

When a new checklist item is added, your challenge is to give checklist items a random title.

Toggle description

Table views provide swipe to delete functionality, but it's up to you to do the actual delete action. In this video, you'll learn how to do that.

Toggle description

So far, this app only has one screeen. You'll take it to the next level by adding a new screen.

Toggle description

Prototype cells allow you to customize your cells at run time, whereas you customize static cells at build time. You'll add a static cell in this video.

Toggle description

In this challenge, you'll add a text field to your static table view cell.

Toggle description

Understanding the responder chain is critical for working with text fields. You'll the responder chain to work in this video.

Toggle description

There are times when you need to respond to special kinds of events. These are called control events and you'll learn about them in this video.

Conclusion 1:24
Toggle description

This video wraps up the process of adding and deleting items to your todo app.

Part 4: Editing Items

Toggle description

When you add items, you'll ultimately need to edit them. This video will give you an overview of what this means.

Toggle description

In this episode, you'll write your own protocol to handle adding new items and canceling item addition.

Segues 5:09
Toggle description

Segues are relationships between view controllers and can also pass information between them. This video will cover the basics of them.

Making the edit view controller takes some work. Your challenge will to come up with a task list to make it happen.

Toggle description

This episode covers the use of the detail disclosure indicator and why it is necessary for the todo app.

Toggle description

Why have one segue, when you can have two? Your task is to create a second segue for editing.

Toggle description

Segues allow you to gain access to view controllers and then how to pass data to them. In this video, you'll learn how to do that.

Your challenge is to answer a simple question about your app behavior.

NSObject 8:52
Toggle description

Often times, you can save time and subclass the NSObject to gain additional behavior to your object.

Toggle description

You'll often spend time refactoring your code and Xcode provides a few tools to do this.

Toggle description

Your challenge is to refactor a protocol by way of Xcode's refactor tools.

Conclusion 1:20
Toggle description

This video wraps up work on the todo list app and it will show you where to go.

Part 5: Other Table View Features

Toggle description

In this final part, you'll get an overview of some other cool table view features that you can incorporate into your app.

Toggle description

Subclassing table view cells provides a lot of advantages. For one thing, we get IBOutlets and IBActions.

Toggle description

Moving rows is actually pretty easy with table views but it means we have to enter mode. Thankfully, that's easy as well.

Toggle description

Deleting multiple rows means you'll have to enable the selection of multiple rows. This episode walks you through the process.

Toggle description

In thie episode, you'll rewrite the table view to provide data in sections and you'll do this via the UILocalizedIndexCollation object.

Toggle description

Table views only you to also create indexes your content. It involves implementing specific methods which you'll do in this video.

Toggle description

At this point, you'll rewrite the model to organize your todos by priority to be later organized into individual sections.

Toggle description

With the model completely rewritten, you'll also have to rewrite the controller as well.

Toggle description

With the model complete and the controller almost rewritten, you'll finish the rewrite by completing sections and correcting any errors.

Toggle description

In this challenge, you'll provide header titles for all your priority sections.

Toggle description

In this episode, you'll learn how to move items between sections, allowing you to shift todos between priorty categories.

Conclusion 2:39
Toggle description

This final episode wraps up the entire series and provides some resources on where you might like to go next.