Xcode 시뮬레이터 빌드 안되는 문제
·
개발일기/IOS
rosetta 시뮬레이터로 설정해줘야한다!! ! rosetta가 뭐임?✅ Rosetta는 인텔 프로그램에서 OS X와의 호환성을 연결해주는 백그라운드 프로그램이라고 합니다. 응용 프로그램중에 응용 프로그램(Intel)로 표시되어 있는 프로그램들은 M1같이 Apple 실리콘이 탑재된 맥북에서 작동하기 위해서는 Rosetta가 필요합니다. Xcode는 응용 프로그램(Universal)로 되어 있기 때문에 Apple 실리콘과 인텔을 모두 지원하는 걸 알 수 있고, 범용 앱이기에 Rosetta가 필요하지 않습니다. ! 굳이 사용하지 않아도 arm과 x86_64 를 모두 지원하는데 굳이 Rosetta를 누르는 이유?✅  해당 설정을 누르게 되면 Universal 앱에서 Apple Silicon을 지원하도록 업데이..
[UiKit] pod install 오류
·
개발일기/IOS
[!] CocoaPods could not find compatible versions for pod "MobWithAD": In Podfile: MobWithAD (= 1.2.4)None of your spec sources contain a spec satisfying the dependency: `MobWithAD (= 1.2.4)`.You have either: * out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`. * mistyped the name or version. * not added the source repo that hosts the Pod..
[UiKit] 뷰 레이아웃 관련 메서드 정리...
·
개발일기/IOS
View와 ViewController 레이아웃 사이클ViewController 를 표시했을 때, 3단계로 호출이된다업데이트 : 오토레이아웃의 Constraints를 갱신한다. Constraints의 갱신은 SubView로부터 SuperView의 순서대로 호출된다.레이아웃 : Constraints를 바탕으로 레이아웃을 실행한다. 여기에서 view의 center와 bounds를 결정한다. 레이아웃의 갱신은 superview로 부터 subview의 순서로 호출된다.그리기 : 레이아웃 후, UIView의 drawRect(rect:CGRect)가 호출된다. 이때는 CoreGraphics를 사용하여 그린다.viewController에서 레이아웃이 결정되는 과정viewWillLayoutSubViews() 메서드 호출..
[UiKit] UIPanGesture setTransition(.zero) 해주는 이유
·
개발일기/IOS
💡 setTranslation(.zero)를 해줘야하는이유이동 범위를 제한해주었다면, setTranslation메서드를 적어주지 않아도 작동하지만, 손가락 움직임에 따라 변하는 느낌보다는 조금만 건드려도 훅 올라가는 느낌이 든다.이유는 pan제스처 인식기가 원점에서부터 이동한 거리를 따라서 이동해야하는데, .zero로 설정해주지않으면 바로 이전 위치로부터 떨어진 거리를 계산하기 때문에 훅 올라가고 훅 내려가는 것이다. 따라서 setTranslation메서드를 적어주는 것이 좋음!