즐겨찾기 추가HOME 로그인회원가입관리자
    
 
     방문자수
11
64
431
218,825
 
  앱개발지침

 
작성일 : 11-11-11 17:30
viewDidLoad 와 viewWillAppear의 차이
 글쓴이 : 관리자
조회 : 10,275  
이 두개의 차이를 처음에는 잘 모르죠.

아래 자세한 영문 설명이 있습니다. (윽 돌 날라온다 ...)

한글로 설명을 하자면....

view는 한개의 object죠.

viewDidLoad는 view object가 생성된 후 발생하는 이벤트입니다. 메모리에 view가 올라온 다음이라는 것입니다.

그리고 viewWillAppear는 view가 안보이다가 다시 보이게 되었을때 발생하는 이벤트입니다.

뷰가 A => B => C 이렇게 네비게이션이 발생할때

처음에 A => B => C 갈때는 viewDidLoad와 viewWillAppear가 모두 발생합니다.
C => B => A로 돌아올때는 viewWillAppear만 발생하는 것입니다.
그다음에 A=>B=>C로 갈때도 viewWillAppear만 발생하는 것입니다.

생성시점과 보여주는 시점을 분리한 것입니다.



1) ViewDidLoad - Whenever I'm adding controls to a view that should appear together with the view, right away, I put it in the ViewDidLoad method. Basically this method is called whenever the view was loaded into memory. So for example, if my view is a form with 3 labels, I would add the labels here; the view will never exist without those forms.

2) ViewWillAppear: I use ViewWillAppear usually just to update the data on the form. So, for the example above, I would use this to actually load the data from my domain into the form. Creation of UIViews is fairly expensive, and you should avoid as much as possible doing that on the ViewWillAppear method, becuase when this gets called, it means that the iPhone is already ready to show the UIView to the user, and anything heavy you do here will impact performance in a very visible manner (like animations being delayed, etc).

3) ViewDidAppear: Finally, I use the ViewDidAppear to start off new threads to things that would take a long time to execute, like for example doing a webservice call to get extra data for the form above.The good thing is that because the view already exists and is being displayed to the user, you can show a nice "Waiting" message to the user while you get the data.

 
 

Total 31
번호 제   목 글쓴이 날짜 조회
40 [android개발] Event-Driven 관리자 04-15 1631
39 [android개발] Activity, Service, Receiver 관리자 04-15 1551
38 [android개발] Object & Class 관리자 04-15 1218
37 우편번호 검색 URL 관리자 10-25 1553
36 아이폰 어플디자인 가이드라인 관리자 07-05 5905
35 어플제작비용 관리자 04-30 4848
34 android의 viewDidLoad와 viewWillAppear는 ? 관리자 11-11 2134
24 viewDidLoad 와 viewWillAppear의 차이 관리자 11-11 10276
32 앱기능 구성 관리자 10-31 2425
31 앱개발 견적산출 방법 관리자 10-31 6914
30 스토리보드샘플(쇼핑몰) 관리자 06-21 6600
29 쇼핑몰 UI설계서 관리자 04-30 5049
27 JSON 인터페이스 관리자 04-30 3421
26 Appstore 리뷰 가이드라인(한글버전) 관리자 04-02 3251
25 메모리 관리(문씨 강좌) 관리자 04-02 7489
24 아이폰 개발은 쉽다 ? 관리자 04-02 3497
23 앱 ? 웹 ? 관리자 04-02 2785
22 둥근 모서리 만들기 관리자 03-09 2953
21 뷰컨트롤러간의 변수및 메소드 공유 관리자 03-09 5325
20 번들ID 간편하게 관리하기( Provisioning > XCode > AppStore ) 관리자 03-09 29726
 1  2  
서비스이용약관  |  개인정보취급방침  | 이메일 무단수집거부 Email:modeller@naver.com | Copyright(C) GYnet Co.  
지와이넷(주) |  대표자: 한영봉 |  사업자등록번호:212-81-84903 |  울산시 남구 신정동 650-17 이안상가105호
서울시 강남구 역삼동 봉은사로 114길 43 창업센터