목록안드로이드(Android) (69)
Simple&Natural
9/1 내용 업데이트 저장된 Scheme json 파일이 버전별로 모두 동일한 것이 이슈인 것으로 보인다. 때문에 Migration 시 스키마 변경사항을 인지하지 못해 쿼리를 생성하지 않는 이슈인 것 같다. 근데 분명 테이블을 추가했는데 스키마 파일이 동일한 것도 의문이다. 계속 분석해봐야겠다. 기존의 Room은 version=2 인 상황에서 새 테이블을 추가하여 version=3으로 마이그레이션 해야 하는 상황이었다. 1 to 2 의 경우에는 수동으로 마이그레이션을 해주었지만 이번에 간단한 테이블 추가라 AutoMigration을 이용한 상황. 실행을 해보면 아래와 같은 로그만 반복된다. expected: TableInfo{name='recentSearchQueries', columns={query=C..
가로 방향의 ViewPager2 내 세로 방향의 RecyclerView를 가지고 있는 fragment pager 를 사용하던 중 개선사항이 하나 들어왔다. 세로 방향으로 스크롤했는데 가끔씩 가로로 스크롤이 된다는것. 이 원인은 recyclerView와 viewPager2가 터치 이벤트를 서로 경쟁적으로 뺏어가기 때문이다. 세로로 스크롤을 했음에도 viewPager2가 터치 이벤트를 가로채버리는 것. 이를 해결하기 위해서는 recyclerView에서 먼저 스크롤 이벤트를 감지한 후 세로 방향의 스크롤이 더 크면 recyclerView에서 터치 이벤트를 처리하도록 하면 된다 계산해보면 수직 45도 각도를 기준으로 이보다 각도가 작게 스크롤하면 viewPager2가, 이보다 각도가 커지면 recyclerVie..
우측에 하나의 View를 고정값으로 두고 TextView를 가변길이 + Ellipsize 처리하려고 할 때 맨 아래와 같이 작성한다. 핵심은 아래의 세 줄이다. android:layout_width="wrap_content" ... app:layout_constrainedWidth="true" app:layout_constraintHorizontal_bias="0.0" app:layout_constraintHorizontal_chainStyle="packed" constrainedWidth를 true로 설정하여 레이아웃 범위를 초과하지 않도록 제약을 걸어주고 bias를 0.0으로 설정하여 좌측으로 정렬한 뒤 chainStyle을 pack으로 설정하여 바로 다음 레이아웃 옆에 차곡차곡 쌓이는 구조로 만들어..
UPDATE 밑에 방법은 뻘짓이고 그냥 AndroidStudio 내 Statistics 플러그인을 사용하면 알아서 계산을 해준다... ㅎㅎ https://plugins.jetbrains.com/plugin/4509-statistic Statistic - IntelliJ IDEs Plugin | Marketplace Shows project statistic. plugins.jetbrains.com 플러그인을 설치하고 하단 statistics -> refresh 를 누르면 아래와 같이 알아서 타입별로 통계를 내준다. 현재 통계를 보니 절반 정도가 Kotlin 코드로 전환되었다. 안드로이드 스튜디오 내에서 전환율을 찾아주는 기능을 찾지 못했다. 그래서 터미널을 이용해 직접 카운팅하는 방법을 사용. 안드로이드..