로그인 바로가기 하위 메뉴 바로가기 본문 바로가기
난이도
심화

안드로이드 앱 프로그래밍

임시 이미지 정재곤
http://www.boostcourse.org/mo316/forum/2628
좋아요 1436 수강생 20117

강의에서 뷰 화면을 갱신하기 위해 invalidate() 호출을 한다고햇는데,

안해도 뷰가 갱신됩니다.

이에 대해 궁금해서 찾아보니 

https://codentrick.com/android-view-lifecycle/

이 글을 보게되었습니다. flow 에 있는 메서드들을 로그를 찍어봤는데 

view life cycle 을 확인해봐도 invalidate(),requestlayout()은 호출되지않고 onDraw() 가 호출되더라구요

setBackgroundResource도 setText도 ondraw() 가 실행되어 뷰가 재갱신되는데

set ~ 으로 시작하는 함수들은 다 onDraw() 함수가 호출되는건가요?

그럼 invalidate 는 언제 사용하는거고, requestLayout()과 언제 구분해서 사용하는지,

로그를 찍을때 위 url 에 나온 life cycle 과 다르게 measure() 함수는 오버라이딩이 되지않는데 저 라이프 사이클이 잘못된건지 알고싶습니다!