아래에 글중에 JSON 을 이용하여 객체 전달하는 방법을 소개하였던 글이 있길래 좀 더 쉽게 객체를 전달하는 방법이 있어서
공유하기 위해 이 글을 써보았습니다.
댓글로 간단하게 써놨지만 혹시나 궁금한데 이해가 어려우신분들을 위해 간단하게 샘플을 만들어봤습니다.
코드 부분은 이미지로 되어있습니다.(개발자는 타이핑을 귀찮아 하면 아니됩니다!! -_-+)
일단 레이아웃을 간단히 보여드리면 First Activity 에서 Text1과 Text2에 데이터를 입력하고 SEND 버튼을 누르면 Second Activity 에 Text1과 Text2 에 해당 데이터를 보여주는 예제입니다. 이때 Text1과 Text2를 객체에 담아서 전송합니다.
레이아웃을 그리는 방법은 여러가지가 있고 사람마다 방식이 틀리므로 코드는 생략하겠습니다.
일단 자신이 사용할 객체를 만듭니다. 이때 Serializable 을 implement 해주도록 합니다. SerialVersionUID 는 작성하셔도 되고 안하셔도 됩니다.(이클립스에서 Warning으로 잡히는데 마우스를 대시면 자동으로 생성할수 있도록 해줍니다.)
다음으로 First Activity의 코드를 보자면
코드에서 보신것처럼 TextObject 객체를 생성하고 EditText1의 내용과 EditText2의 내용을 담아줍니다.
(저같은경우에는 get , set 메서드를 만들어서 캡슐화 하였지만 귀찮으시다면 객체에 변수를 public으로 해서 바로 다이렉트로 집어 넣으셔도 무관합니다.)
다음 Second Activity 코드입니다.
Intent 를 받은후 getSerializableExtra 로 받을때 강제 캐스팅을 하면 해당 객체를 바로 사용할 수 있습니다.
이상 짧고 굵은 객체 전달 방법입니다.
기회가 된다면 좋은 지식이 있을때마다 공유하도록 하겠습니다! 그럼 이만!!
아, null 값 체크가 생략되있습니다. 필요에 따라 하셔야 할꺼에요!