IntentActivityTest – Android移動開發技術文章_手機開發 Android移動開發教學課程

public class IntentActivityTest extends Activity {
protected static final int REQUEST_CODE = 1;

private Button button;
@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
        button = (Button) findViewById(R.id.button1);
        button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(IntentActivityTest.this,SecondActivity.class);
intent.putExtra("activityMain", "數據來自activityMain");
//startActivity(intent);
//如果在activity上要求返回值,那麼啟動的方法是
startActivityForResult(intent, REQUEST_CODE);
}
});
       
    }
//由子activity返回到父activity時,調用此方法
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
//判斷是不是需要的請求碼
if (requestCode == REQUEST_CODE){
//判斷由Activity返回的結果碼
if(resultCode == RESULT_CANCELED) {
setTitle("取消");
}
else if(resultCode == RESULT_OK){
String tmp = null;
Bundle extras = data.getExtras();
if(extras != null) {
tmp = extras.getString("store");
}
setTitle(tmp);
TextView textView = (TextView)findViewById(R.id.textView);
textView.setText(tmp);
}
}
}
}

———————————————————————————————-

子activity  demo

public class SecondActivity extends Activity {
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.onCreate(savedInstanceState);
        setContentView(R.layout.two);
       
        button = (Button) findViewById(R.id.button2);
        setTitle("Activity2");
        button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Bundle extras = getIntent().getExtras();
if(extras != null) {
String data = extras.getString("activityMain");
setTitle(data);
}
Bundle bundle = new Bundle();
bundle.putString("store","數據來自SecondActivity");
Intent mIntent = new Intent();
mIntent.putExtras(bundle);

//設置傳遞給父activity的Bundle
setResult(RESULT_OK,mIntent);
finish();
}
});
}

摘自  ch_jinyi的專欄 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *