장군이네집
Basic Syntaxhttps://kotlinlang.org/docs/reference/idioms.html String Formatting "sum of $a and $b is ${a + b}" String 내부에 $ , ${}을 통해서 쉬운 formatting이 가능 Type check & auto cast if (obj is String) { // `obj` is automatically cast to `String` in this branch return obj.length } if 연산자를 통해 type check가 완료된경우 auto cast되어 해당 type의 method를 바로 사용가능 when when (obj) { 1 -> "One" "Hello" -> "Greeting" is Lon..
Android Developers : https://developer.android.com/guide/topics/ui/how-android-draws.html https://medium.com/@britt.barak/measure-layout-draw-483c6a4d2fab View View는 3단계에 따라 그려진다1) Measure2) Layout3) Draw 1. Measure : view의 크기를 결정한다 - child를 포함하며, parent의 동의를 받아야한다. 1) measured W (width) & H (height) : view가 원하는 크기2) W & H : 추후 다시 계산되어, 스크린에 표시될 크기 measure는 top-down traversal parent는 child에게 Mea..
배경 안드로이드 View는 3단계를 거쳐 그려짐 1) Measurement2) Layout3) Draw 1) VIew 크기 결정. root부터 child로 ( widthMeasureSpec, heightMeasureSpec )를 전달하며 반복됨2) 크기 기준으로 View 위치 결정. 역시 root부터 child로 반복적으로 호출3) 그리는 단계. 그릴땐 child에게 measure하라는 메세지가 전달됨 중첩된 레이아웃이 많을수록 측정하는데 걸리는 시간이 많아진다.ConstraintLayout은 flat한 구조를 유지하면서 복잡한 레이아웃 설정이 가능하다. 고로 효율이 좋다 side_constraints LeftOf / RightOf / TopOf / BottomOf + @id / parent 다른 Vie..