Android

다른 액티비티로 데이터 전달 시, 클래스의 객체를 전달하는 방법

yugyeong 2023. 2. 1. 17:56

다른 액티비티로 데이터를 전달할 때 , 클래스의 객체를 전달하는 방법이다.

 

Serializable

먼저 전달하고자 하는 클래스에 implements Serializable 를 해준다.

public class Contact implements Serializable {

 

 

putExtra()

데이터를 전해줄 자바코드에서 putExtra 파라미터 첫번째 값에는 key 값, 두번째 값에는 클래스를 생성하여서 생성한 클래스를 넣어준다

Intent intent = new Intent(MainActivity.this, EditActivity.class);

intent.putExtra("contact", contact);

startActivity(intent);

 

getSerialzableExtra()

데이터를 받을 때는 getIntent().getSerialzableExtra("key 값");

형태로 받아온다.

 

받아온 클래스 데이터를 다시 객체 하나씩 띄어놓기 위해서 

Contact contact = (Contact) getIntent().getSerializableExtra("contact"); 

형태로 맨 앞에 (Contact => 클래스명) 을 붙여준 것이다.

Contact contact = (Contact) getIntent().getSerializableExtra("contact");