진형아빠이야기

안녕하세요.

진형아빠입니다.

이번에는 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");

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



참쉽죠~~~


신고

Comment +10