본문 바로가기

분류 전체보기

[iOS][Animation] UIView resume, pause 애니메이션을 정지 했다가 다시 돌리는 함수를 공유 하고자 합니다. 1234567891011121314func pauseLayer(layer: CALayer) { let pausedTime = layer.convertTime(CACurrentMediaTime(), from: nil) layer.speed = 0.0 layer.timeOffset = pausedTime } func resumeLayer(layer: CALayer) { let pausedTime = layer.timeOffset layer.speed = 1.0 layer.timeOffset = 0.0 layer.beginTime = 0.0 let timeSincePause = layer.convertTime(CACurrentMediaTime(.. 더보기
[iOS] 백그라운드, 포그라운드 확인 iOS는 전혀 App이 Background 인지 Foreground 인지 지원 알려주는 함수가 있다. AppDelegate.swift를 보시면 func applicationDidEnterBackground(_ application: UIApplication) {}func applicationWillEnterForeground(_ application: UIApplication) { } 위 두 함수를 통해서 파악을 할 수 있다! 하지만 이건 AppDelegate 인데, ViewController에서 어떻게 콜백을 받냐??구글링 해보면 여러가지가 있는데요. 그중에서 전 NotificationCenter를 이용하면 아주 쉽게 콜백을 받을 수 있습니다. 12345678910111213141516171819ove.. 더보기
[Android] android:launchMode="singleTask" 사용 시 발생하는 문제점 앱 실행 시 첫 화면을 위와 같이 설정하시는 분들이 많을 꺼라 생각 됩니다.머 다들 이해하시겠지만, android:launchMode="singleTask" 요놈이 제법 골치꺼리 더라구요. 아마 singleTask를 화면이 Activity를 유일한 Task에 하나만 띄우기 위해서 많이 사용하시는 듯 합니다만,위와 같이 설정 할 경우 아래와 같은 문제가 생기네요. 1. Task 목록이 아닌 App 아이콘으로 실행 시, 무조건 Main 화면이 실행 된다. -> 즉, 기존에 Task Stack에 쌓여 있는 화면들은 무시가 되는 거죠. 2. onActivityResult가 호출이 안된다고 합니다. -> startActivityForResult를 이용하여 결과를 받을 수 없다는 의미죠. 참고 : http://jw.. 더보기
[Android] 특정 화면 잠금 해제 특정 화면이 동작하고 있을 때나 어떤 이벤트를 진행 했을 때,화면을 자동 잠금 모드로 바뀌는 것을 막을 수 있는 방법을 공유 하고자 한다. @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ... getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON); ... } 위와 같이 FLAG_KEEP_SCREEN_ON 을 넣어주면 된다. 혹시나 FLAG_KEEP_SCREEN_ON만 넣었는데 안되시는 분들은 위 소스 같이FLAG_TRUN.. 더보기
[Android] Error:Failed to resolve: com.google.android.gms:play-services-measurement Error:Failed to resolve: com.google.android.gms:play-services-measurement: Version google play service를 업데이트 할 때 위와 같은 오류가 나오고 빌드가 되지 않을 때가 있다. 이럴 경우는 'com.google.gms:google-services' 버전이 맞지 않아서 발생 한다. 예를 들어 아래와 10.2.6 버전(현재 최신 버전)으로 업데이트를 하고자 할경우, compile 'com.google.android.gms:play-services-base:10.2.6' compile 'com.google.android.gms:play-services-ads:10.2.6' compile 'com.google.android.gms:.. 더보기
[iOS][Swift] Navigation bar 숨기기 ## Storyboard 파일에서 http://stackoverflow.com/a/27616077 ## Programmatically navigationController?.isNavigationBarHidden = truenavigationController?.isNavigationBarHidden = false 더보기
[iOS][Swift] NavigationController 화면 전환 시 애니메이션 ## CATransition 이용 let transition = CATransition() transition.duration = 0.3 transition.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut) transition.type = kCATransitionFade self.navigationController?.view.layer.add(transition, forKey: nil) self.navigationController?.pushViewController(targetViewController, animated: false) ## UIView Aniamtion 이용UIView.animate(wit.. 더보기
[iOS] Assets 에 저장할 이미지 변경 iOS는 한 이미지에 대해 3가지 형태가 필요하다. According to my understanding, if the image size is 100 * 100@1x -> 100 * 100@2x -> 200 * 200@3x -> 300 * 300참고 : http://stackoverflow.com/a/36515093 그래서 혹시 Android Assets Studio 같은 프로그램이 iOS에서도 있을까 하고 찾아본 결과Prepo 라는 앱을 발견 하게 되었다.다운로드 : https://wearemothership.com/work/prepo/ 위 앱을 다운 받고 Prepo 앱에서 이미지를 넣으면 3가지 형태로 뽑을 수 있다. icon은 icons 탭을 클릭하여 사용 하시면 되고,이미지 같은 경우 Artwo.. 더보기