일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- iOS Target
- Dependency Rule
- windowScene
- Dispatch.main.sync
- 메모리 접근 충돌
- Git Large File Storage
- Concurrent
- UICoordinateSpace
- 로버트마틴형
- in-out
- Automatically manage signing
- memory safety
- RxSwift
- 대머리깃허브
- coordinateSpace
- Large File Storage
- Ribs
- iOS 버전 점유율
- RxCocoa
- SWIFT
- 잡초가득블로그
- Apple Certificate
- Github file size
- rib
- App Signing
- 클린아키텍쳐
- swiftdocs
- RIBs Tutorial
- ios
- conflicting access to memory
- Today
- Total
목록개발/iOS (55)
빙수왕의 개발일지
클로져에서 [weak self] _ in guard let self = `self` else { return } 이런 코드 발견 왜 `self`라고 쓸까? 백틱 없이 self라고 써도 되는데? 여기 나와 같은 고민 https://stackoverflow.com/questions/50119484/self-in-swift-closure `self` in Swift closure I want to understant self in Swift closure. For Ex - () -> Void = { [weak self] in guard let `self` = self else { self.callMethod2() } self.callMethod3() } Why we use stackoverflow.com `(..
기본 init을 private로 바꾼다.
문제 상황 UICollectionView의 특정 셀을 디폴트로 설정해놓고 어떤 효과를 주고 싶었음.. 그러나 cellForItem을 사용해서 collectionView.cellForItem(at: IndexPath(row: strongSelf.currentPage.rawValue, section: 0)) 위 코드를 실행했는데 nil이 나왔음. 컬렉션 뷰가 있고 셀을 다 넣어줬는데 왜?????? 이유 Apple Developer Documentation developer.apple.com 여기 보면 "visible cell"을 가져온다고 되어있었다.. 해결방안 먼저 offset을 세팅해서 해당 셀이 보이는 상태로 스크롤을 맞춰놓고 cell 호출했다. 주의: 여기서 setContentOffset animat..
argument label이 withIdentifier인 메소드들.. 예를들어 테이블뷰의 dequeueReusableCell이라던가 UIStoryboard의 instantiateViewController에서 하드코딩을 사용하게 된다. withIdentifier: "cell" withIdentifier: "DetailViewController" 이런식으루.. 근데 이럼 오타가 날수도 있고 유지보수에도 안좋아서 하드코딩은 피하는게 좋으니 다른 방법을 쓸 수 있다. NSObject에 extension으로 identifier의 이름을 가져오는 프로퍼티를 만들어주면 다양한 객체에서 이 프로퍼티를 부르는 것 만으로 identifier의 이름을 하드코딩하지 않고 가져올 수 있다. 아래와 같이 NSObjectExten..
일단 값이 3개일때는 아래처럼 튜플을 사용해서 하는 방법이 있다. if (firstValue, secondValue) == (secondValue, thirdValue) 그리고 더 많은 값을 비교할 떄는 아래처럼 Set안에 넣어서 비교하는 방법도 있다. if (Set(firstValue, secondValue, thirdValue, fourthValue).count == 1)
왼쪽에 얘네 - Gutter 여기 하단부분은 디버깅 영역 실행하기 단축키 - shift 엔터 아래와 같이 결과값을 result area에서 여러가지로 볼 수 있다. 왼쪽부분: 프로젝트 네비게이터
일단 내가 무작정 처음 예제 앱을 만들면서 생소했던 것들은.. 1. 왜 가끔 정의된 함수들에 변수명 앞에 또 뭐가 있는지? (위에서는 for 같은 것) 2. 함수를 호출할 때 sender: 이런식으로 가이드 텍스트가 자동으로생기는데 왜 지우면 에러가 나는지? 당연히 그냥 엑스코드 기능인줄 알았는데 진짜 텍스트였음 3. 또 "_"라던지 "."는 뭐하는애인지 .. 이런것들이였다. 이건 다 전달인자 레이블(Argument Label)을 몰라서 못알아먹는거였다.. 다음과 같은 함수가 있다고 가정했을 때, func introduce(to name: String) → () { } // 함수 호출 introduce(to: "나리") Parameter, Argument, Argument Label, 함수명에 해당하는 ..