요즘 만들고 있는 어플에서 리스트뷰와 그리드뷰의 아이템 순서변경을


지원해야 되서 만든 커스텀 레이아웃 입니다. 


ListView 순서변경 같은 경우는 Music 어플의 오픈소스가 있긴하지만 애니메이션 없고


스크롤이 부자연 스러운데다 마지막 아이템에 충돌했을때 위치 변경이 되지 않은 버그등이


있어서 직접 만들게 되었습니다.


ListView와 GridView를 각각 상속받아 만들었고 내부로직은 거의 비슷합니다.


만들면서 힘들었던 점은 스크롤 구현시에 뷰들이 재활용 되면서 기존에 가지고 있던


애니메이션의 fillAfter 값을 그대로 가지고 오기때문에 다시 해제해주는 작업이


제법 힘들었습니다. 좀더 쉽게 구현하려면 재활용을 안하게 하면 되지만 성능이


별로 좋지않아서 어떻게든 포함해서 구현했습니다.


허니컴부터는 DragAndDrop과 PropertyAnimator로 인해 좀더 간단히 구현 가능합니다.


코드를 공개하고 싶지만 회사에서 만든거라 아쉽네요 다만 비슷한 형태를 만들고 싶으신분은


막히는 부분 쪽지 주시면 친절히 알려드리겠습니다.