안녕하세요. 밀쿄 입니다. 오늘은.leading, trailing, left, right에 대한 이야기를 해볼려고 합니다. 사실 지난번부터 AutoLayout에 대한 이야기를 많이 올리고 있습니다. 아마 코드로 뷰 짜는 방법에 대한 포스팅을 빌드업이라고 생각하시면 될 것 같습니다 그럼 바로 시작하겠습니다. 다들 leading, trailing, left, right를 어떻게 사용하고 있나요? 저는 몇달전까지는 아무 생각없이 아무 구분없이 사용하고 있었는데요. 그럴만한게 leading과 left 아무꺼나 써도 왼쪽에서 출력이 되기 때문입니다. 다음 코드를 보겠습니다. let label = UILabel() label.text = "Leading" label.textColor = .label view.add..
안녕하세요 밀쿄입니다. 오늘은 날짜를 비교하는 방법에 대해서 알아보겠습니다. 제가 날짜를 비교할 때 두 날짜의 차이를 연산해서 0인지 늘 체크했었는데 그것보다 더 간단한 방법이 있더라구요. 오늘은 그거에 대해 알아보겠습니다, 하지만 그거만 하면 글이 짧아질 것 같으니 유용한 팁 하나도 같이 넣어두겠습니다. ○ Date()로 생성한 날짜로 현지 시간에 맞게 출력하고 싶을 때 let date = Date() let dateFormatter = DateFormatter() dateFormatter.dateFormat = "yyyy. MM. dd HH:mm:ss" dateFormatter.timeZone = TimeZone.current print(dateFormatter.string(from: date)) /..
안녕하세요. 밀쿄입니다. 오늘은 오토레이아웃과 관련되어있는 firstBaselineAnchor와 laseBaselineAnchor에 대해서 알아보겠습니다. 이 두 인스턴스 프로퍼티는 좌표값인 Y값과 관련되어있습니다. 그래서 타입이 NSLayoutYAxisAnchor 입니다. 먼저 firstBaselineAnchor부터 애플 문서를 살펴보도록 하겠습니다. View에서 맨 위 텍스트 행의 기준선을 나타내는 레이아웃 앵커라고 되어있습니다. 처음에 읽어보면 쉽사리 감이 오지 않습니다. 저도 그랬습니다. 그럼 코드와 실행 결과로 한 번 살펴보도록 하겠습니다. let baseLabel = UILabel() baseLabel.text = "Base Label\nBase Label\nBase Label" baseLab..
오늘은 스위프트의 프토토콜 중 하나인 Sequence에 대해서 알아보겠습니다. Sequence는 꽤 중요한 프로토콜이라고 생각합니다. Array 타입을 사용할 때 대부분의 기능을 이 프로토콜이 제공할 뿐만 아니라 map, filter같은 것도 이 프로토콜에 정의 되어 있습니다. 애플문서는에는 다음과 같이 언급되어 있습니다 "요소에 순차적으로 반복 접근 할 수 있는 타입" 조금 더 살펴보자면 시퀀스는 한 번에 하나씩 단계별로 수행할 수 있는 값 리스트이고 시퀀스 요소로를 반복하는 가장 일반적인 방법은 for-in 이라고 합니다. 그리고 그렇게 for-in을 사용하면 시퀀스에 특정 값이 포함되어 있는지 확인할 수도 있죠. 또한 시퀀스의 끝에 도달할 때까지 각 요소를 테스트할 수 있죠 그리고 사용자가 커스텀 ..
안녕하세요. 밀쿄 입니다. 오늘은 미루고..미뤄왔던 포스팅을 해볼까합니다. 이 블로그 시작하며서 써야지 했던게 벌써 몇달이 흐르고 흘렀네요. 이 주제에 대해 자신이 없기도 했고 ( 지금도 없어요 지적 해주세요 ) MVVM을 다루기전에 짚고 넘어가고 싶어서 시작합니다. iOS개발을 하면서 MVC, MVVM, VIPER 등등 많은걸 들어보셨겠지만 제일 기본은 아마 MVC 입니다. MVC는 Model-View-Controller를 뜻합니다. 사실 이게 전부 입니다. 먼저 View부터 살펴보자면 View는 쉽게 생각하면 사용자한테 보여지는 부분 입니다. 즉 UI와 관련된 부분인거죠. View는 Model에 접근할 수 없습니다 접근하고 싶으면 Controller를 거쳐야합니다. View는 이렇듯 Controlle..
안녕하세요. 밀쿄입니다. 오늘은 스위프트의 메모리관리에 대해서 알아보겠습니다. 프로그래밍에 있어서 메모리 관리는 매우 중요합니다.. 메모리 관리를 잘못하면 앱이 죽어버리기도 하기 떄문이죠. 흔히 얘기하는 Unmanaged Language 와 Managed Language 라는게 있는데 ( 학술적인 용어는 아닙니다. ) Swift는 Managed Language라는 거죠. 그 말은 컴파일러가 알아서 해준다...라는거죠 참고로 대표적인 Unmanaged Languag는 C나 C++이 있을꺼고.. ( 동적할당과 해제 라는게 그래서 있죠 ) Managed Language 에는 가비지 콜렉터가 있는 자바가 있겠네요. 자 여튼 본론으로 돌아와서 컴파일러가 알아서 해주니까 된거 아냐? 라고 생각할 수 있는데 그러면 ..
제목이 조금 추상적이네요.. ios13부터 UIModalPresentationStyle 기본값이 바뀌었습니다.. 이전까지는 fullScreen이 기본이었는데 13에서 automatic으로 바뀌었죠.. 물론 사진뷰컨트롤러 같은경우는 13에서도 기본값이 fullscreen이긴 하지만 보통 formsheet나 pagesheet가 카드형식으로 나타납니다.. 이렇게 됨으로서 문제가 여러가지발생합니다.. 이 글에서 다뤄볼껀 뷰가 dismiss 되어도 viewWillAppear이 호출이 안됩니다. 흐으으음 어떻게하나..고민을 하다가 찾아보니 해결방법이 있긴있더라구요, https://developer.apple.com/documentation/uikit/uiadaptivepresentationcontrollerdele..
안녕하세여 제가 과거에 CoreData에 대한 글을 쓴 적 있어요, ( https://milyo-codingstories.tistory.com/2 ) 조금 더 보안하고자 다시 글을 잡습니다.. 4월달의 저니까..완전 초짜일때 적은거네요 지금도 초짜지만 저때는 더 초짜였던.. 자그럼 바로 시작하겠습니다 https://developer.apple.com/documentation/coredata/setting_up_a_core_data_stack?changes=_7 Setting Up a Core Data Stack | Apple Developer Documentation Article Setting Up a Core Data Stack Set up the classes that manage and persi..
- Total
- Today
- Yesterday
- UIViewControllerRepresentable
- AutoLayout
- 텔큐온
- ios
- BBIK
- SEQUENCE
- 결합연산자
- 스유
- 콤바인
- compactMap
- programmers
- Just
- Apple
- ErrorHandling
- CombineLatest
- 자료구조
- MVC
- replaceNil
- 알고리즘
- 스위프트유아이
- 스위프트
- combine
- 현업이그리운
- 유니온파인드
- SwiftUI
- swift
- 삨
- iOSCombine
- 스택뷰
- Queue
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |