-
인텐트로 클래스 데이터 넘기기안드로이드/학습&강좌 2011. 12. 17. 20:47Test.class//인텐트 간에 값을 넘기기위해서는 반드시 Serializable 구현public class Test implements Serializable {private String name;private int age;private String addr;public Test(String name, int age, String addr){this.name = name;this.age = age;this.addr = addr;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getAddr() {return addr;}public void setAddr(String addr) {this.addr = addr;}}
TestPutExtra.classpublic class TestPutExtra extends Activity {//Vector 는 직렬화가 잘 안됨 ArrayList 를 사용하면 됨ArrayList<Test> list;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);Intent i = new Intent(this, TestGetExtra.class);list = new ArrayList<Test>();list.add(new Test("최재현", 30, "수원"));list.add(new Test("시스타", 30, "서울"));list.add(new Test("소녀시대", 30, "수원"));list.add(new Test("원더걸스", 30, "수원"));list.add(new Test("레인보우", 30, "수원"));//값을 넘김i.putExtra("list", list);//인텐트 시작startActivityForResult(i, SHOW_PREFERENCES);}@Overridepublic void onActivityResult(int requestCode, int resultCode, Intent data){super.onActivityResult(requestCode, resultCode, data);if(requestCode == SHOW_PREFERENCES)if(resultCode == Activity.RESULT_OK){//넘겨준 값은 직렬화 되어 넘어가기 때문에 다른 인텐트에서 변경하여도 값이 변하지 않음Log.e("testResult", list.get(0).getName());}}}
TestGetExtra.classpublic class TestGetExtra extends Activity {@Overridepublic void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.preferences);Intent intent = getIntent();Serializable list = intent.getSerializableExtra("list");//경고 메세지를 없에주는 어노테이션@SuppressWarnings("unchecked")ArrayList<Test> l = (ArrayList<Test>)list;Log.e("test", ((Test)l.get(0)).getName());Log.e("test", ((Test)l.get(1)).getName());Log.e("test", ((Test)l.get(2)).getName());Log.e("test", ((Test)l.get(3)).getName());Log.e("test", ((Test)l.get(4)).getName());//첫번째 아이템 값 변경l.get(0).setName("kara");}'안드로이드 > 학습&강좌' 카테고리의 다른 글
프래그먼트 + ViewPager (0) 2015.06.05 프래그먼트 사용해보기 (0) 2015.06.04 AdMob 내가 만든 앱에 광고 넣기 (0) 2015.06.04 Blink Animation 적용하기 (0) 2015.06.03 EditText InputType 속성 정의 (0) 2012.11.19 내 App 리스트 보기 & Mp3 파일 Album_Art 연결하기 (3) 2011.11.23 WebView 로딩시 프로그래스바 표시 (2) 2011.08.31 CoverFlow Version2 (Matrix 를 이용) (0) 2011.08.25 Custom ExpandableListView 만들기 (43) 2011.08.23 EXTERNAL_CONTENT_URI 를 이용한 Media File 목록 불러오기 (11) 2011.08.17 댓글