위의 그림과 같이 프로토콜을 두개 만들어준다. MyProtocol이라는 protocol은 myVar라는 변수를 property로 가지고 있어야하며 myVar는 MyVarClassProtocol이라는 프로토콜을 채택한다. MyVarClassProtocol이라는 프로토콜은 name이라는 String타입 property가 있어야한다 이제 MyVarClass라는 MyVarClassProtocol을 채택하는 class를 만들어주고 MyClass라는 MyProtocol을 채택하는 class를 만들어주자. MyVarClass에는 name을 출력해주는 printName이라는 함수가 존재한다. MyClass를 마저 작성하려했더니.. ...안된다.. 에러메시지를 보니 MyClass가 MyProtocol을 준수하지 않았다고..
Swift에서 각종 기본컨트롤러를 이용하다보면 Delegate를 확장하고싶을때가 있다. 예를들면.. UITableView의 Delegate는 UITableViewDelegate라는 Protocol이고, UITableView는 UIScrollView를 상속받는다. UITableViewDelegate는 UIScrollViewDelegate라는 프로토콜을 따르며, 거기에 자신만의 요구하는 함수 프로토콜을 가지고있다. 그렇다면 저 UITableView처럼 UITableView를 상속받는 뷰컨트롤러를 만들고 UITableViewDelegate를 따르는 프로토콜을 만든 후 delegate를 그 프로토콜로 바꿔주면 되는거 아닌가?!?! import Foundation import UIKit protocol MyTab..
- Total
- Today
- Yesterday
- module map
- arc
- RxSwift
- Fastlane
- swift
- iOS Mnemonic
- cicd
- SwiftUI
- Protocol
- 니모닉
- firebase distribution
- flatMap
- associated type
- Gitlab Runner
- iOS 니모닉
- CI
- modulemap
- XCodeGen
- XCode Cloud
- Delegate
- 순환참조
- cd
- isSecureTextEntry
- Swift 니모닉
- iOS wallet
- ios
- widget extension
- Tuist
- Secure Enclave
- Objective-C
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |