2️⃣UIKit + AutoLayout
Fall 2025
Lecture Slides
Lecture Video
Lecture Demo Code
Clone the Repository
git clone https://github.com/intro-to-ios/lec2-uikit
OR git clone [email protected]:intro-to-ios/lec2-uikit.gitCheckout Branches
git checkout origin/1-uilabel
OR git checkout 1-uilabel
git checkout origin/2-uiimageview
OR git checkout 2-uiimageviewClasses Demo Code
class Student {
// Properties
var name: String
var major: String
var age: Int
// Initializer
init(name: String, major: String, age: Int) {
self.name = name
self.major = major
self.age = age
}
}
// Creating an instance of Student
let jay = Student(name: "Jay", major: "CS", age: 67)
// Access properties like below
jay.name
jay.major
jay.age
// NOTE: the super class of `EngineeringStudent` is `Student`
class EngineeringStudent: Student {
// Inherits all properties and function from 'Student'
// Define more properties
var doesShower: Bool
init(name:String, major:String, age: Int, doesShower: Bool) {
self.doesShower = doesShower // Initalize property specific to this class
super.init(name: name, major: major, age: age) // Call the super class's initializer
}
}
// Creating an instance of EngineeringStudent
let asen = EngineeringStudent(name: "Asen", major: "CS", age: 22, doesShower: false)
asen.doesShower // This works fine since asen is an EngineeringStudent
jay.doesShower // This DOESN'T work since jay is a Student. `doesShower`
// is a property of EngineeringStudent but not StudentLast updated
Was this helpful?
