본문 바로가기

교육/iOS

[iOS] xib와 strong, weak

기본적으로 xib 뷰 안에 있는 객체들을 IBOutlet으로 끌어오면 weak로 설정된다.

이 이유는 뷰가 객체들을 잡고 있기 때문에 뷰가 dealloc되지 않는 한 안의 객체들이 dealloc되지 않기 때문이다.

따라서 뷰 밖에다 일반 객체등을 끌어놓고 IBOutlet으로 끌어와보면 strong으로 설정된다.

이 객체들은 따로 붙잡아 두고 있을 상위 객체가 없기때문에 사용하지 않는 순간 dealloc된다.

assign커맨드를 쓰게 되면 포인터 nil초기화를 컴파일러가 따로 해주지 않기 떄문에 weak로 사용해야 한다.(memory leak)

 

'교육 > iOS' 카테고리의 다른 글

[iOS] 키보드 내리는 버튼 추가  (0) 2017.03.06
[iOS] init  (0) 2016.08.03
[iOS] Xib  (0) 2016.08.01
[iOS] 눈내리는 애니메이션 만들기  (0) 2016.08.01
[iOS] 뷰의 sub뷰 가져오기  (0) 2016.08.01