기존에 데이터형이 Map<String, String> 였는데
커스텀리스트뷰를 만들어 여러데이터를 아답터에 넣을려고 ArrayList<Map<String, String>> 바꿨습니다.
근데 최종적으로 통신모듈부분에서 캐스팅오류가 발생하네요ㅠㅠ.
ArrayList<Map<String, String>>형을
Map<String, String>으로 캐스팅 어떻게 해야하는지요?
ArrayList<String> 이 String으로 캐스팅되지 않는다는 것을 이해하신다면
ArrayList<Map<String, String>>이 Map<String, String>으로 캐스팅되지 않는다는 것도 이해가 되실 거예요.
근데 ArrayList<Map<String, String>> 쓰지않고 Map<String, String> 형으로 구현이 가능한가요?
제가 만든 데이터형을 호출받는 부분이 전부 Map<String, String> 으로 받아서..ㅠㅠ.이걸 다 어레이리스트로 바꾸자니
배보다 배꼽이 더 커지는 꼴이라 ㅠㅠ.
맵을 어레이리스트로 변경해서 넣어주면 되겠지요. 즉, 어레이리스트를 하나 새로 만들고 맵에 있는 데이터를 하나씩 뽑아서 어레이리스트에 넣어주면 되겠죠.
아니면 리스트 뷰에서 맵을 처리할 수 있도록 직접 구현하셔도 되구요.
근데 맵은 순서 개념이 없으므로 리스트 뷰에는 맞지 않는 것 같습니다.
ArrayList 가 뭔지 아신다면 이해하실 수 있을 겁니다.
기본적으로 캐스팅은 서로가 상속관계에 있는 클래스나 성질이 비슷한 primitive type 끼리만 가능합니다.
로그인 유지
ArrayList<String> 이 String으로 캐스팅되지 않는다는 것을 이해하신다면
ArrayList<Map<String, String>>이 Map<String, String>으로 캐스팅되지 않는다는 것도 이해가 되실 거예요.