일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- swift documentation
- uiscrollview
- rxswift
- Clean Code
- Refactoring
- 리펙토링
- SWIFT
- ios
- Observable
- 리팩토링
- clean architecture
- RxCocoa
- MVVM
- combine
- 리펙터링
- UITextView
- uitableview
- Xcode
- map
- 클린 코드
- Protocol
- tableView
- ribs
- 애니메이션
- swiftUI
- collectionview
- HIG
- UICollectionView
- Human interface guide
- 스위프트
- Today
- Total
목록delegate (4)
김종권의 iOS 앱 개발 알아가기
.pageSheet에서의 viewWillAppear 동작 안하는 것 주의 A가 밑에 있고 B가 위에 존재할때 modalPresentationStyle = .pageSheet 방법은 B가 dismiss시에 A는 viewWillAppear호출이 안되는 것 주의 @objc private func didTapButton(_ sender: Any) { let secondViewController = SecondViewController() secondViewController.modalPresentationStyle = .pageSheet present(secondViewController, animated: true, completion: nil) } .fullScreen 방식은 B가 dismiss된 경우, A..
ARC Auto Reference Count block에 있는 프로퍼티들에 대하여 RC(Reference count)를 0으로 만들기 위해 -1씩 RC를 감소시켜 메모리해제를 자동으로 해주는 것 단 retain cycle인 경우 메모리 해제 불가능한 경우 존재 주의: 특정 블럭의 함수가 종료된 경우에 메모리 해제를 진행하는 것 weak는 RC를 늘리지 않아서 RC가 0으로 유지되지만 0이라고 곧바로 메모리 해제가 되는것이 아닌 것 Strong RC(Reference Count)를 증가 class A { var b: B? } class B { var a: A? } func sumFunction() { var aInstanceReference: A? = A() // a_RC = 1 var bInstanceR..
Delegate Proxy란? delegate를 사용하는 부분을 RxSwift로 표현할 수 있도록 하는 것 * 원리 : DelegateProxy.swift 파일과 DelegateProxyType.swift 이용 * Delegate개념 : 함수 실행위치를 미리 선언해 놓고, 구현은 직접 하라고 delegate시키는 것 -> (protocol로 선언) import UIKit import RxSwift import RxCocoa protocol MyDelegate { func willStart() func end() } class UISomething: NSObject { var delegate: MyDelegate? = nil func start() { delegate?.willStart() // 이 함수를..
1. Delegate패턴 1) 개념 - 프로토콜로 미리 기능에 대한 것을 구현한 후, 그 프로토콜을 구현한 클래스에 기능을 위임시킨 것 1 2 3 4 5 6 7 8 9 10 11 12 class ViewController: UIViewController, UITextFieldDelegate { @IBOutlet var tf: UITextField! override func viewDidLoad() { // tf객체의 대리자를 ViewController에게 위임 self.tf.delegate = self } } extension ViewController: textFieldBeginEditing(_ textField: UITextField) { // } -> 텍스트필드의 기능을 viewController에..