iOS/Mac
-
CALayer 기본 애니메이션이 disable 시키기iOS/Mac 2018. 9. 5. 13:36
How to disable basic animation of CALayer CALayer는 기본적으로 애니메이션이 적용되어 있는듯. 예를 들면, layer의 frame을 이동시키면 따로 애니메이션안 걸어도 애니메이션 건 것처럼 이동한다. 그 애니메이션을 끄고 싶을 때, 이렇게 하면 된다. [CATransaction begin]; [CATransaction setDisableActions:YES]; someLayer.frame = someFrame; [CATransaction commit];
-
빌드 버전 자동화iOS/Mac 2017. 12. 19. 19:00
빌드 버전 자동화 프로젝트에서 앱의 관한 정보중에 Build Version(CFBundleVersion) 은 프로젝트 생성시 1에서 시작하고 보통 빌드해서 (사내든 스토어든)배포할 때마다 구분하기 위해 증가 시킨다.이 작업을 빌드 스크립트로 자동화 할 수 있다.아래 스크립트를 Build Phase에 추가한다.빌드할 때마다 올라가는게 흠이다. 코드를 조금 수정하면 build config 보고 release / debug 구분해서 올리는 것도 방법일 듯. 1234#!/bin/bashbuildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "$INFOPLIST_FILE")buildNumber=$(($buildNumber + 1))/usr/libexec..
-
간단한 탄력있는 애니메이션iOS/Mac 2017. 6. 13. 15:06
간단히 할 수 있는 탄력있는 애니메이션 설정 값. 12345678910111213[UIView animateWithDuration:0.3 delay:0 usingSpringWithDamping:0.7 initialSpringVelocity:3.0 options:UIViewAnimationOptionCurveEaseInOut animations:^{ // 애니메이션 코드 // ... } completion:^(BOOL finished) { // 완료후 코드 }];Colored by Color Scriptercs From: https://developer.apple.com/documentation/uikit/uiview/1622594-animatewithduration
-
pod install 시 몇 가지 오류 해결법.iOS/Mac 2017. 5. 31. 20:20
pod install 시 transitive dependencies [!] The 'Pods-XXX' target has transitive dependencies that include static binaries: (/path/to/YYYYY.framework) 이런 오류가 나면, Podfile에 pre_install do |installer| def installer.verify_no_static_framework_transitive_dependencies; endend 추가해주면 일단 설치가 된다. static framework transitive dependency 검증을 안하게 하는 듯. bitcode 관련. 바이너리가 bitcode로 enabled로 컴파일된게 아니라고 하면아래 코드를 Pod..
-
Xcode 유용 단축키iOS/Mac 2016. 12. 9. 10:29
Xcode 유용 단축키 네비게이터와 인스펙터 탭선택 Cmd + 1 - 8 (Left) Cmd + Option(Alt) + 1 - 6 (Right) 왼쪽, 오른쪽, 하단 패널 보이고/감추기 Cmd + 0 (Left) Cmd + Option(Alt) + 0 (Right) Cmd + Shift + Y (Bottom) 에디터 문서 히스토리 이전/다음 Ctrl + Cmd + Left/Right 특정 줄 번호로 이동 Cmd + L 문서열기 Cmd + Shift + O 보조 에디터 열기/닫기 Cmd + Option(Alt) + Enter (Show) Cmd + Enter (Hide) 탭 Cmd + T (탭 생성) Cmd + W (탭 닫기) Cmd + Shift + [ ] (탭 이동) 스토리보드 오토포커스 Cmd + ..
-
Xcode 8에서 7.x 단말에 실행하기iOS/Mac 2016. 11. 24. 20:14
Xcode 8에시 실행할 수 있는 단말의 iOS버전은 8.0이상으로 되어 있습니다.7.x 를 지원하는 앱인 경우 디버깅 해야하면 곤란한 경우가 생기는데요.이럴 때 간단한 꼼수로 Xcode 7의 단말 정보를 복사해와서 돌릴 수가 있습니다. Xcode 7.x가 /Applications/oldXcode/Xcode.app/ 에 설치되었다고 가정.Xcode 8은 /Applications/Xcode.app 에 설치되었다고 가정.(안 깔렸을 경우, 맨 아래에서 설치하세요) Xcode 7 단말지원 정보 디렉토리에 가서.. cd /Applications/oldXcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/ 7.0, 7.1 디렉토리..
-
카테고리로 대체된 메소드 찾기iOS/Mac 2016. 9. 30. 09:17
가끔 의도치 않게 기존 클래스의 특정 메소드가 어떤 라이브러리의 Category 구현으로 메소드가 대체되는 경우가 있다.(Category 구현은 프로젝트에 포함되어 있기만 하면 적용된다! #inlcude해야 메소드 hint가 뜨고 빌드가 되기 때문에 흔히 #include해야 적용 된다고 착각하는데 #include와 상관없이 컴파일하면서 적용된다.) 그런 경우 라이브러리가 많으면 찾기가 쉽지 않을 수 있는데, Scheme Editor의 환경변수에 OBJC_PRINT_REPLACED_METHODS 변수를 추가하고 값을 YES 로 설정하면 카테고리로 대체되는 메소드들의 로그를 남겨준다. Edit Scheme > Run > Arguments > Environment Variables 출처: https://dev..