一、创建主活动
package com.example.androidtest;
import android.support.v7.app.ActionBarActivity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends ActionBarActivity implements OnClickListener{
String tag = "AndroidTest";
int request_code = 1;
//当活动首次被创建时调用
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn = (Button)this.findViewById(R.id.button1);
btn.setOnClickListener(this);
}
public void onClick(View v)
{
startActivityForResult(new Intent(this, ResultActivity.class), request_code);
}
public void onActivityResult(int requestCode, int resultCode, Intent data){
if(requestCode == request_code){//判断请求码
if(resultCode == RESULT_OK){//判断结果码
Toast.makeText(this, data.getData().toString(), Toast.LENGTH_SHORT).show();
}
}
}
}
二、创建另一个活动ResultActivity
视图
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="${relativePackage}.${activityClass}" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/txt_username"
android:layout_below="@+id/txt_username"
android:layout_marginLeft="37dp"
android:layout_marginTop="52dp"
android:text="Button" />
<EditText
android:id="@+id/txt_username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="26dp"
android:ems="10"
android:inputType="textPersonName" />
</RelativeLayout>
活动
package com.example.androidtest;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
public class ResultActivity extends Activity implements OnClickListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_result);
Button btn = (Button)this.findViewById(R.id.button1);
btn.setOnClickListener(this);
}
@Override
public void onClick(View v) {
EditText txt_username = (EditText)findViewById(R.id.txt_username);
Intent data = new Intent();
data.setData(Uri.parse(txt_username.getText().toString()));
setResult(RESULT_OK, data);
finish();//关闭该活动,回到调用它的活动。
}
}
注意: 如果请求码设为-1,则使用startActivityForResult()方法来调用活动与使用startActivity()方法来调用是等同的。也就是说,没有结果返回。