페이지

2010년 10월 23일 토요일

안드로이드 android:style/Theme.Dialog 테마로 띄운 창에 데이터 주고 받기

다이얼로그 테마로 띄운 창에 데이터 넘겨주기
아래의 빨간색이 테마창에 데이터를 넘기는 방법이다.
@@ java
   Intent intent = new Intent(testMain.this,DialogText.class);
   intent.putExtra("index", 1);
   intent.putExtra("name", "test");
   intent.putExtra("isTest", true);
  
   startActivityForResult(intent, 1); // Sub_Activity 호출

그럼 새로 띄운 테마에서 받을때는 어떻게 하는지 보자
마찬가지로 아래의 빨간글을 참고하면 된다.
@@java
        Intent intent = getIntent(); // 이 액티비티를 시작하게 한 인텐트를 호출
        int idx = intent.getIntExtra("index", 0); // 값을 안넘겼을 경우 디폴트 0으로 받음.
        String name = intent.getIntExtra("name");

        boolean test = intent.getIntExtra("isTest", false);

그렇다면 새로 띄운 테마에서 다시 데이터를 보내고 받을때는 어떻게 할까?
테마를 띄울때나 받을때나 똑같이 하면된다.

단 띄운 테마로부터 데이터를 받을때는
아래의 메소드를 반드시 오버라이드해서 처리해야한다.
@Override
 protected void onActivityResult(int requestCode, int resultCode, Intent data){
  super.onActivityResult(requestCode, resultCode, data);

// 액티비티가 정상적으로 종료되었을 경우
  if(resultCode==RESULT_OK){   
   if(requestCode==1){   
    // 받아온 값을 처리한다.
    String whatIntent = data.getStringExtra("whatIntent"); // 여기서 데이터 받는다

댓글 없음:

댓글 쓰기