2011-03-03 4 views
2

번들 인스턴스를 통해 ArrayList<ArrayList<HashMap<String, String>>>의 인스턴스를 하나의 Android 활동에서 다른 활동으로 전달하는 방법은 무엇입니까?안드로이드 및 번들을 통해 중첩 ArrayList 전달

(내가 JSON 문자열을 사용할 수 있습니다. 나는 더 나은 방법이 있는지 알고 싶습니다.)

사전에 친절 감사 하라구요.

답변

2

새로운 활동을 시작하는 데 사용하는 인 텐트에서 추가로 전달할 수 있습니다. ArrayListSerializable을 구현하므로 Intent.putExtra()으로 피드를 보내려면 특별한 작업을 수행 할 필요가 없습니다.

+0

예를 들어 Arraylist를 객체로 전달하는 것은 좋은 방법입니다. json과 all ... so 1 up .. –

+0

@Ganapathy : Right - I see. 고마워. 그리고 완전한 대답도. – SK9

+0

직렬화는 실제로 비효율적입니다. 이 데이터 구조는 많은 요소를 보유 할 가능성이 있습니다.이 경우 직렬화의 비효율은 실제로 여러분을 물릴 수 있습니다. 이렇게하지 않는 것이 좋습니다. – hackbod

1

일반적으로 인 텐트를 통해 활동간에 지나치게 많거나 너무 큰 데이터를 전달하는 것은 좋지 않습니다. 중앙에서 어딘가에 저장하고 경량 식별자 또는 이와 유사한 것을 전달하는 것이 더 좋으므로 다른 활동은 저장소에서 해당 식별자를 검색 할 수 있습니다.

예. Application 클래스를 사용하여 이러한 데이터를 저장할 수 있습니다. 응용 프로그램 클래스는 응용 프로그램이 실행되는 동안 항상 사용 가능합니다. getApplication() 메서드를 호출하여 각 액티비티에서 가져옵니다.

관련 문제