Intent를 사용하여 서로 다른 Activity 간에 데이터 (주 유형, 대상) 를 전송하는 Serializable 인터페이스

1748 단어 Serializable
서로 다른 Activity에서 데이터를 전송해야 하며, 원래의 Activity가 Intent로 새로운 Activity로 넘어갈 때 데이터를 첨부한 후 새로운 Activity에서 받을 수 있다.다음은main에서 NA로 이동하는 예를 들면:main.java 중간 코드:
 
Intent intent=new Intent();
			// Intent 
			intent.setClass(main.this, NA.class);
			// Activity main, Activity NA
			intent.putExtra("et1", et1.getText().toString());
			//et1 ,et2 
			intent.putExtra("et2",et2.getText().toString());
			main.this.startActivity(intent);
			// 

 
 NA.java 수신 데이터:
 
     Intent intent=getIntent();
        // Intent
        String et1=intent.getStringExtra("et1");
        String et2=intent.getStringExtra("et2");
        // et1,et2 
        TextView tv=(TextView)findViewById(R.id.tv2);
        tv.setText("et1="+et1+"   et2="+et2);
        // tv2 TextView 

전송 데이터는 Bundle도 사용할 수 있는데 사용법의 차이가 많지 않다. 참고Android 개발에 새 Activity 삽입
 
개체를 전송하려면 Bundle:
 
typeVideo tv_play=new typeVideo();
Intent intent = new Intent();
intent.setClass(context,VideoPlayer.class);
Bundle bundle=new Bundle();
bundle.putSerializable("tv_play",tv_play);
intent.putExtras(bundle);
context.startActivity(intent);

typeVideo 클래스는 Serializable 인터페이스를 실현해야 합니다. typeVideo가 다른 클래스의 대상에 유용하면 이 클래스도 Serializable 인터페이스를 실현해야 합니다.
 
수신:
typeVideo tv_play=(typeVideo)getIntent().getSerializableExtra("tv_play");

좋은 웹페이지 즐겨찾기