기본적으로 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 |