일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 안드로이드 바로가기
- 스위프트 UserDefaults
- 스위프트 테이블 뷰 셀
- 스위프트 카메라
- swift autolayout
- 플러터 뷰 컨트롤러
- 안드로이드 FCM
- 안드로이드 에러
- 앱 백그라운드 푸시 데이터 저장
- 스위프트 앨범
- silent push
- swift sms
- 노티피케이션 익스텐션
- 앱 꺼졌을 때 푸시 데이터 저장
- 스위프트
- flutter 회전
- FlutterView MethodChannel
- Swift flutterview
- 안드로이드 숏컷
- flutter rotate
- 푸시 데이터 저장
- 스위프트 푸시
- Swift flutterviewcontroller
- 안드로이드 앨범
- native flutter view
- Flutter UIKitView MethodChannel
- 스위프트 웹뷰
- swift 문자
- Flutter NativeView
- NotificationService Extension
- Today
- Total
Things take time
[SWIFT] Launch Image에 이미지 등록 및 delay 시간 주기 본문
[Launch Image]
참고로 알아둘 것은 Launch Screen File이란 것과 Launch Image Source 두 가지가 있다는 것이다.
Launch Images Source는 앱이 실행되고 그냥 이미지 하나 잠깐 띄우고 메인으로 넘어갈때 활용하면 되는, 기존의 기능이고 Launch Screen File이란 Launch Screen용 스토리보드 파일을 따로 만들어서, 일반 뷰 컨트롤러와 마찬가지로 프로그래밍 제어뿐 아니라 Auto Layout등을 활용할 수 있다. (처음 쓴 말과 동일) 이를 위해서는 storyboard파일을 위의 캡쳐에서 Launch Screen File에 연결하면 된다.
이 작업을 위해서는 .storyboard의 Identity and Type의 Interface Builder Document에서 Use as Launch Screen을 해제하면 된다.
내가 필요한 것은 그냥 인트로 이미지 하나와 해당 인트로 이미지가 지정된 시간이 지난후에 Main.storyboard로 넘어가도록 할 것이다. 그러므로 위처럼 Screen File(Storyboard 파일)은 사용하지 않을 것이기에 공란으로 비워둔다.
방법은 간단하다.
1. Assets.xcassets로 들어가 Launch Image를 추가한다. 좌측에서 우클릭으로 들어갈 수 있다.
2. 그리고 우측의 Attributes Inspector에서 사용할 분류를 지정한다. Portrait는 세로, Landscape는 가로모드이다.
3. 사용할 iOS버전을 체크하고 생성된 크기에 따라 이미지 해상도를 맞춰서 넣어주면 된다. (하단 참고).. 그런데 이 이미지의 이름을 Default(320,480), Default@2x(640,960)처럼 만들어서 넣는게 원칙이라하는데.. 난 그거 모르고 그냥 내가 원하는 파일명으로 했는데도 잘 된다. 버전업에 따른 업데이트인지.. 아닌지는 모르겠다. 불안하면 Default 검색하면 나오니까 그 해상도에 맞춰서 변경하고, 드래그해서 넣어주면 된다.
4. AppDelegate.swift라는 클래스 파일의 application함수안에 아래처럼 쓰레드를 넣는다. 이는 메인스토리보드에 연결된 init view를 열때 호출되는 함수이므로.. 여기에 쓰레드로 메인 뷰를 열 시간을 지연시켜버리는 것이다.
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch. Thread.sleep(forTimeInterval: 2.0) return true }
실행 결과 인트로 이미지를 띄우고 해당 시간 지연된 후, 메인 스토리보드에 연결된 시작 뷰로 넘어가는 것을 확인할 수 있다.
'iOS (기능)' 카테고리의 다른 글
[SWIFT] sqlite3, 폰 DB 라이브러리 FMDB사용하기 (0) | 2017.06.23 |
---|---|
[SWIFT] UIButton, UILabel, UITextField 코드로 추가하기 (기존 UI위치 복사하기) (0) | 2017.06.22 |
[SWIFT] 주소록에 저장된 데이터 불러오기 (0) | 2017.06.12 |
[SWIFT] UIActivityViewController를 이용하여 아이폰에 설치된 앱들에게 공유하기 (0) | 2017.05.31 |
[SWIFT] 밴드 링크 기능 추가하기 (0) | 2017.05.30 |