ホームに戻る
 マルチアクティビティ

// MultiActivity.java と SampleInput.java を用意
// AndroidManifest.xml に <activity android:name="SampleInput" /> を追加

// MultiActivity.java

package org.example.test;

import java.util.*;
import android.app.*;
import android.content.*;
import android.os.*;
import android.view.*;
import android.view.View.*;
import android.widget.*;

public class MultiActivity extends Activity
{
    public static int ID = 1;
    Button bt;

    public void onCreate(Bundle savedInstanceState)
    {
      super.onCreate(savedInstanceState);

      LinearLayout ll = new LinearLayout(this); 
      ll.setOrientation(LinearLayout.VERTICAL);
      setContentView(ll);

      bt = new Button(this);
      bt.setText("A");

      ll.addView(bt);

      bt.setOnClickListener(new SampleClickListener());
    }

    class SampleClickListener implements OnClickListener
    {
      public void onClick(View v)
      {
        Intent it = new Intent(getApplicationContext(), SampleInput.class);
        String str = "From A";
        it.putExtra("Str", str);
        it.putExtra("Num", 1);
        startActivityForResult(it, ID);        	 
      }
    }

    public void onActivityResult(int reqcode, int result, Intent it)
    {
      if(reqcode == ID && result == RESULT_OK)
      {
        String str = it.getStringExtra("Str");
        int num = it.getIntExtra("Num", 0);

        AlertDialog.Builder adlg;
        adlg = new AlertDialog.Builder(HelloWorld.this);
        adlg.setTitle("Test");
        adlg.setMessage(str + ":" + num);
        adlg.setPositiveButton("YES", null);
        adlg.show();
      }
    }
}

// SampleInput.java

package org.example.test;

import android.app.*;
import android.content.*;
import android.os.*;
import android.view.*;
import android.view.View.*;
import android.widget.*;

public class SampleInput extends Activity
{
    Button bt;
    String str;
    int num;
    Intent it;

    public void onCreate(Bundle savedInstanceState)
    {
      super.onCreate(savedInstanceState);
      LinearLayout ll = new LinearLayout(this); 
      ll.setOrientation(LinearLayout.VERTICAL);
      setContentView(ll);

      bt = new Button(this);
      bt.setText("B");

      it = getIntent();
	  str = it.getStringExtra("Str");
	  num = it.getIntExtra("Num", 0);

      ll.addView(bt);

      AlertDialog.Builder adlg;
      adlg = new AlertDialog.Builder(SampleInput.this);
      adlg.setTitle("Test");
      adlg.setMessage(str + ":" + num);
      adlg.setPositiveButton("YES", null);
      adlg.show();

      bt.setOnClickListener(new SampleClickListener());
    }

    class SampleClickListener implements OnClickListener
    {
      public void onClick(View v)
      {
        it.putExtra("Str", "From B");
        it.putExtra("Num", 2);

        setResult(RESULT_OK, it);

        finish();
      }
    }
}

inserted by FC2 system