프로그래밍/안드로이드

안드로이드 - arraylist를 인텐트로 넘기는 방법!

가카리 2014. 1. 2. 18:31
반응형

이번에는 ArrayList를 putExtra에 담아서 전달하는 방법을 알아보도록 하겠습니다.


Step1. 데이터 클래스의 직렬화

우선 인자로 전달하기 위해서는 ArrayList에 담기는 데이터 클래스가 직렬화가 되어있어야 합니다.

 

public class User implements Serializable{

...

}

이런식으로 직렬화를 해줍니다.


Step2. 인텐트에 데이터 담기

사용하는 방법은 동일합니다.

ArrayList<User> listUsers 라는 객체에 데이터를 꽉꽉눌러담아놓으시고요.

다음과 같이 startActivity를 실행하셔서 전달하면 됩니다.

혹시나 해서... listUsers.add(new User("가나다",23,"대학생"));

등의 형태로 담을수도 있겟죠? ^^;;;


Intent it = new Intent(this, ListActivity.class);

it.putExtra("users", listUsers);

startActivity(it);

 

 


Step3. 데이터 꺼내서 사용하기

ArrayList<User> list = (ArrayList<User>) getIntent().getSerializableExtra("users");

위와 같이 인텐트를 받는 액티비티에서 사용하시면 됩니다.

 

출처 : http://ralf79.tistory.com/385

반응형