Intent 传值示例

MainActivity ------ MyActivity

  Note: 1, 接收返回值时需要重载onActivityResult()

    2, 在设置返回resultCode时,要使用 setResult (int resultCode, Intent data)

MainActivity.java



package sanyo.com.intent002; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.TextView; public class MainActivity extends Activity { private Button button; private TextView textView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); button = (Button)findViewById(R.id.button_main); textView = (TextView)findViewById(R.id.textview_main); button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Intent intent = new Intent(MainActivity.this, MyActivity.class); //startActivity(intent); intent.putExtra("sanyo.com.intent002", "Hello MyActivity!"); startActivityForResult(intent, 123); } }); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { // TODO Auto-generated method stub super.onActivityResult(requestCode, resultCode, data); if (resultCode == 222) { String resultValue = data.getExtras().getString("sanyo.com.intent002"); textView.setText(resultValue); } } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }

 

【MyActivity.java】

package sanyo.com.intent002;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

public class MyActivity extends Activity {

	private Button button;
	private TextView textView;
	Intent mIntent;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		
		setContentView(R.layout.layout_myactivity);
		button = (Button)findViewById(R.id.button1);
		textView = (TextView)findViewById(R.id.textView1);
		
		mIntent = getIntent();
		String	getString = mIntent.getStringExtra("sanyo.com.intent002");
		textView.setText(getString);
		Toast.makeText(getApplicationContext(), "I am MyActivity!", Toast.LENGTH_LONG).show();

		button.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub								
				mIntent.putExtra("sanyo.com.intent002", "How are you MainActivity!");
				setResult(222, mIntent);
				finish();
			}
		});
		
	}

}

 

【实现效果截图】

 

 

 

posted @ 2014-04-13 23:01  海之涯2008  阅读(311)  评论(0编辑  收藏  举报