분류 전체보기
-
[Swift] suspend resume partial function for 함수명 해결 방법개발/Swift 2024. 3. 1. 13:11
“suspend resume partial function for 함수명” 라는 에러 발생 public func isEnabled(_ key: Key) -> Bool { return dict[key] } let keyword is a constant and, therefore, read-only and thread-safe. When a variable is declared as var it becomes mutable and not thread-safe unless the data type is specifically designed to be thread-safe when mutable. let 쓰면 안전한데 var 쓰면 thread safe 하지 않음 특히 배열, 딕셔너리는 var 인경우 안전하지 ..
-
[HIG] Privacy 읽기개발/Swift 2023. 9. 29. 19:52
프라이버시는 매우 중요하다 , 사람들의 데이터를 보호하는것은 필수적이다. 앱을 배포,업데이트 하면 수집하는 개인 정보 관련 데이터에 대한 세부 정보를 제공해야 한다. 앱스토어 앱 페이지에 가면 이렇게 볼수 있음, 사람들이 앱 다운받기전에 결정 하도록 할수 있다. 꼭 필요한 데이터에만 접근요청 하라 - 실제 필요 기능 보다 더 요구 하거나 앱에대한 흥미를 갖기 전에 데이터를 요청하면 사람들이 앱을 신뢰하지 않음 수집 데이터 에대한 투명성 - 유저 데이터를 어떻게 사용 하는지에 대한 계획을 사람들이 이해하지 못하면 정보를 공유하지 않을수 있다. 사람들이 이메일 가리기 를 하는것에 대해 이해 존중하고 앱 트래킹에 대한 의무를 이해하라 가능한경우 device에서 데이터를 처리하라 - 원격 서버로 돌아돌아 쓰지 ..
-
[HIG] Button 읽기개발/Swift 2023. 9. 25. 23:51
버튼은 액션을 일으킨다 버튼은 세 가지 속성(스타일 ,콘텐츠 ,역할)을 결합하여 기능을 명확하게 전달합니다: In addition to all-purpose buttons, many common button styles — like Info, Close, and Contact Add — perform familiar tasks throughout the system. There are also many button-like components that have distinct appearances and behaviors for specific use cases, like toggles, pop-up buttons, and segmented controls. 닫기 , 연락처추가 ,정보 같은 공통적인 버튼..
-
Swift 데이터 감싸져 있는 안에 있는 값 꺼내서 Decode하기개발/Swift 2023. 7. 22. 16:07
{ "identifier": "dsdfdsf", "name": "james", "product: { "expiration_poloicy": { "expire" : 90 } } } 위와 같은 데이터를 서버로부터 받을때 원하는 데이터인 expire는 두번 감싸져 있다. 해당 데이터를 decoding을 하기위해 Entity를 총 세개나 만들어야 원하는 데이터값을 받을수 있을것이다. struct People: Decodable { var identifier: String var name: String var product: Product } struct Product: Decodable { var expirationPlicy: ExpirationPlicy //public init(from decoder: Dec..
-
UISearchbar, UISearchController 기초 사용법개발/Swift 2023. 7. 2. 14:45
WWDC21에 서치바라는것을 발견했다. 그동안 textfield를 가지고 서치바를 구현했는데 이런것을 지원하고 있는지도 몰랐다. 타겟 버전을 높게 하지 않아도 서치바를 사용할수있다. iOS8 이상 그럼 텍스트필드로 만드는것 보다 뭐가 더 유리할지 직접 사용해보자 UISearchController라는게 있다. let searchController = UISearchController() navigationItem.searchController = searchController 이렇게만해도 사용가능하다 그러면 상단에 서치바가 위치한다. 따로 addview , constraint하지 않아도 됨 class ViewController: UIViewController, UISearchResultsUpdating {..
-
Rxswift combineLatest 에러 The compiler is unable to type-check this expression in reasonable time개발/Swift 2023. 7. 1. 13:47
The compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions Rx - combine latest 에 9개 이상의 observable을 넣었더니 에러가 발생 CombineLatest를 쓸떄 8개까지만 쓸수가 있다 이를 해결하기위해 여러 더많은 Observable을 쓰려면 combine 을 하고 그거를 가지고 combine 해줘야한다. let searchCombinedObservable = Observable.combineLatest(searchKeyword.asObservable(), eFriendList.asObservable(..
-
커스텀 UISlider 구현하기 (세로 슬라이드, 이벤트)개발/Swift 2023. 6. 24. 17:13
Modern Collection View 와 MVVM 패턴 가이드 [iOS] Swift Modern Collection View & MVVM 패턴 가이드 | 덤벨로퍼 - 인프런덤벨로퍼 | MVVM 패턴과 Modern Collection View를 사용해 네트워킹을 구현하고, 다양하고 동적인 Collection View를 자유자재로 다룰 수 있게 됩니다., Swift iOS UI, 제대로 다루는 핵심 기술! 📲 iOS Swift 레이www.inflearn.com UI 커스텀private class CustomSlider: UISlider { override init(frame: CGRect) { super.init(frame: .zero) minimum..
-
Collection View가 들어있는 동적 높이의 Table view Cell 구현하기개발/Swift 2023. 6. 18. 17:48
https://inf.run/3E93 [iOS] Swift Modern Collection View & MVVM 패턴 가이드 강의 | 덤벨로퍼 - 인프런덤벨로퍼 | , Swift iOS UI, 제대로 다루는 핵심 기술! 📲 iOS Swift 레이아웃 구현을 위한 MVVM 패턴 + 라이브러리 활용 [사진] 사진과 같은 앱의 레이아웃은 어떻게 구현할까요? 스크롤을 내리면 더 다www.inflearn.com Table view cell 안에 Collection view를 넣어 Grid나 Horizontal 형식의 리스트를 구현해야 할 때가 있다.기본적으로 Collection view Compositional layout 을 써도 되지만 회사에서 신기술을 쓰기 어려울 상황도 있기에... 이런 상황에 table..