Android57 [Android] ViewTreeObserver란? - View가 그려지는 시점 알아내기 ViewTreeObserver란? Android Developers에서는 ViewTreeObserver를 다음과 같이 설명하고 있다. A view tree observer is used to register listeners that can be notified of global changes in the view tree. Such global events include, but are not limited to, layout of the whole tree, beginning of the drawing pass, touch mode change.... A ViewTreeObserver should never be instantiated by applications as it is provided by.. 2020. 9. 19. [Android] ImageView에 색상 넣기 (ColorFilter vs Tint) 안드로이드를 개발하다 보면 아이콘에 색깔을 넣는 경우가 많이 생긴다. 관련 키워드로 검색을 해보면 ColorFilter와 Tint와 관련해서 많은 자료가 나온다. 이번 포스팅에서는 실제로 내가 겪은 문제점을 공유하며 ColorFilter와 Tint의 차이점을 정리해보려고 한다. 내가 오늘 겪은 문제점은 ColorFilter로 값을 지정해줬음에도 색깔이 변경되지 않는 문제였다. 며칠 전에 발견했던 문제였는데 귀찮아서 제대로 찾아보지 않았다가 오늘 자료 조사를 통해 알게 되어서 포스팅을 하게 되었다. 예시를 통해 알아보자. 우선 간단한 이미지 리소스를 먼저 지정해준 뒤, 레이아웃에 설정해주자. ImageView에 색깔을 넣는 방식은 ColorFilter를 설정해주는 방법과 Tint 값을 설정해주는 방법이 있.. 2020. 9. 11. [Android] RxKotlin과 Retrofit2를 사용해 Github api 정보 가져오기 RxKotlin과 Retrofit2를 사용하여 api 통신 하는 예제입니다. 예제에서는 Github에서 제공하는 api를 사용하여 사용자의 repository 정보들을 가져옵니다. 1. dependency 추가 Rxkotlin과 Retrofit2 의존성을 app 수준의 gradle 파일에 추가해줍니다. /* Retrofit2 */ implementation 'com.squareup.retrofit2:retrofit:2.3.0' implementation 'com.squareup.retrofit2:adapter-rxjava2:2.3.0' implementation 'com.squareup.retrofit2:converter-gson:2.3.0' implementation 'com.squareup.okhtt.. 2020. 8. 30. [Android] Glide 라이브러리 사용하기 Glide란? 구글에서 공개한 이미지 라이브러리 가장 성능이 좋은 이미지 로딩 라이브러리로 알려져 있다. 기본적으로 사진 로딩과 동영상, gif 파일 로딩까지 지원한다. Gradle 추가 gradle에 Glide 라이브러리를 추가해준다. (https://github.com/bumptech/glide) build.gradle(Module:app) dependencies { implementation 'com.github.bumptech.glide:glide:4.10.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.10.0' } Glide 기본 사용법 val imageView: ImageView = findViewById(R.id.imageView.. 2020. 5. 31. [Android] 룸(Room) 지속성 라이브러리 룸(Room)이란? 안드로이드 앱에서 SQLite 데이터베이스를 쉽고 편리하게 사용할 수 있도록 하는 기능이다. SQLite 위에 만든 구글의 ORM(Object-relational mapping)이다. 룸을 사용하면 앱의 단일 정보 소스로 제공되는 캐시를 통해 인터넷 연결 여부와 관계없이 앱에 있는 주요 정보의 일관된 사본을 볼 수 있다. 룸의 구성요소 (Database, Entity, Dao) 1. Database 데이터베이스 홀더를 포함하며 앱의 지속적인 관계형 데이터에 대한 기본 연결을 위한 기본 Access Point 역할을 한다. @Database로 처리된 클래스는 다음과 같은 조건을 충족해야 한다. RoomDatabase를 확장하는 추상 클래스여야 한다. 어노테이션 내에 데이터베이스와 연결.. 2020. 5. 30. [Android] Jetpack Databinding이란? DataBinding이란? 코틀린에서 레이아웃을, 레이아웃에서 코틀린의 데이터를 직접 참조하는 라이브러리. 코틀린에서 레이아웃 파일에 의존적인 부분이 많이 사라지고 MVVM등의 패턴과 함께 사용된다. One-way binding은 데이터의 흐름이 단방향을 말하고, Two-way binding 데이터의 흐름이 양방향을 말한다. 기본 사용법 Databinding에서 사용되는 레이아웃 파일들의 Root태그는 이되어야 한다. .... 어떤 객체를 참조하여 데이터를 출력할 지 를 정의해 주어야 한다. 데이터를 선언한 후 @{user.firstName} 처럼 데이터를 View에 참조하도록 연결할 수 있다. 이벤트 처리 1. 메소드 참조 데이터가 바인딩될 때 생성된다. 핸들러에 이벤트를 할당하려면 호출할 메서드 이름.. 2020. 5. 28. 이전 1 ··· 3 4 5 6 7 8 9 10 다음