목록전체 글 (162)
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으로 설정하여 바로 다음 레이아웃 옆에 차곡차곡 쌓이는 구조로 만들어..