얼마전 쿠팡 로켓 프레시에서 마이셰프 갈릭비프스테이크 589g 을 6950원에 판매 !!! 지금은 가격이 올랐네여;; 개인적으로 스테이크 요리를 좋아해서 냉큼 2개 주문 했습니다. 새벽까지 놀고 있다가 로켓 프레시 답게 새벽2시에 배송 도착해서, 냉큼 받아서 바로 냉장실 입성. 다음날 바로 조리 시작! 내용물은 다음과 같아여 척아이롤(대략 200g 조금 넘는 듯), 그린빈, 적양파, 방울토마토, 올리브유, 소스, 마늘, 마늘칩, 시즈닝. 조리 방법은 척아이롤 핏기 제거후 시즈닝을 뿌리고 올리브유를 뿌려줘서 마리네이드를 하면 되지만, 배가 고팟기에 대충 핏물 빼고 시즈닝을 고루 뿌려 준 다음, 후라이팬 달구고, 올리브유 살짝 두른다음 마늘, 적양파, 그린빈, 방울토마토 넣고 5분간 구워줌, 노릇 노릇 해지..
일반 LinearLayoutManager 같은 경우는 findFirstVisibleItemPosition() 을 이용해서 바로 아이템을 가져 올수 있는데, StaggeredGridLayoutManager은 어떻게 가져 올수 있을까? StaggeredGridLayoutManager의 findFirstVisibleItemPosition의 구조는 아래와 같은데 public int[] findFirstVisibleItemPositions(int[] into) { if (into == null) { into = new int[mSpanCount]; } else if (into.length < mSpanCount) { throw new IllegalArgumentException("Provided int[]'s s..
StaggeredGridLayoutManager 를 이용해서 각 항목마다 보여지는 방식을 다르게 구성하고, 마지막 카테고리는 영상처럼 Grid 뷰로 구성하였는데, 동적으로 Span 카운트를 변경하려고 해보니, ScrollListener가 동작을 하지 않았다. stackoverflow 에서 알려주는 방식은 대충 home_rv.apply { layoutManager = StaggeredGridLayoutManager(spanCount, LinearLayoutManager.VERTICAL) adapter = this@HomeViewModel.adapter } 위와 같이 layoutManager 를 바꿔 주면서 SpanCount 를 변경해주고, adapter 또한 변경해 주라는 내용이었다. 물론 이방식도 단순하..
iOS에서 Fabric Crashlytics 를 이용하기 위해서는 dSYM 파일이 필요한데, 찾는 방법은 간단하다. 먼저 https://appstoreconnect.apple.com 에 나의 앱에 들어간후 활동 내역 탭 -> 모든 빌드 -> dSYM 다운로드를 클릭하여 dSYM zip 파일을 받아. Fabric 에 그대로 첨부해 준다.
보통 RecyclerView 에서 아이템 삭제후에 notifyItemRangeRemoved() 또는 notifyItemRemoved() 을 이용해서 아이템의 삭제 여부를 통보 해주면 별다른 이상없이 잘 작동 하지만, StaggeredGridLayoutManager 에서는 각 뷰 타입별로 Span 을 달리 하기 위해 ItemDecoration 을 사용했는데, 여기서 out of index 에러가 나는 것이다. 찾아보니 아래와 같은 순서로 제거 동작을 수행하면 더 이상 에러가 나지 않았다. val index = arrayList.indexOf(item) arrayList.removeAt(index) notifyItemRemoved(index) notifyItemRangeRemoved(index, 1) 참고 ..