[Swift/코드한줄] Print 문 프로퍼티 - separator, terminator
Develop/Swift 2022. 5. 6. 15:26

코드 한 줄에 대해 기록합니다. 의식의 흐름을 따라갑니다. 코드를 짜면서 제일 많이 사용하는 함수가 무엇일까.. 하면 Print문이라고 생각하는데 그렇기 때문에 Print 함수의 공식 문서를 참고해본 사람은 드문 거 같다 print 함수 == 출력 함수로 누구나 알고 있으니! Apple Developer Documentation developer.apple.com print(”Hello World”) 로 주로 사용하기 때문에 우리는 func print(_ item: Any) 의 형태라고 생각하겠지만.. 사실 print문의 정의는 func print(_ items: Any..., separator: String = " ", terminator: String = "\n") 로 separator과 termin..

[Swift/코드한줄] Timer.invalidate()
Develop/Swift 2022. 4. 8. 14:01

코드 한 줄에 대해 기록합니다. 의식의 흐름을 따라갑니다. Timer에서 invalidate() 함수의 정의를 보면 타이머를 중지하고 loop에서 제거해주는 역할을 하는 함수 이라고 작성되어있다 지정된 타이머를 제거하는 유일한 방법이라고 한다 (참고로 timer = nil 한다고 이미 시작된 타이머가 초기화되진 않는다...^^ 하하) 근데 invalidate() 함수를 작성했는데도 타이머가 계속 진행되는 문제가 발생해서 왜일지 알아보았다 만약 timer.invalidate()를 실행했는데도 불구하고 타이머가 계속 실행이 된다면 두 가지 중 이유가 있을 텐데 1. 타이머가 중복돼서 실행된 경우 만약 타이머를 설정하는 코드가 2번 실행됐다면 timer.invalidate() 한다고 해서 2번이 모두 취소가 ..

[Swift/코드한줄] translatesAutoresizingMaskIntoConstraints = false
Develop/Swift 2022. 1. 16. 16:48

하루에 코드 한 줄에 대해 기록합니다. 의식의 흐름을 따라갑니다. 우리가 코드를 이용해 layout을 잡기 전 꼭 해주는 일이 있다 바로 button.translatesAutoresizingMaskIntoConstraints = false 처럼 translatesAutoresizingMaskIntoConstraints 를 false로 설정해주는 일이다 이 코드를 설정하지 않으면 위치가 원하는 데로 잡히지 않는다 왜일지 궁금해졌다 먼저 translatesAutoresizingMaskIntoConstraints 은 UIView Class 에서 Subviews의 Layout 관련 Property로 분류가 되어있는 것을 볼 수 있다 그리고 공식 문서의 정의를 확인해보면 View의 AutoresizingMask가..