Activity跳轉,無返回結果
- ((Button) findViewById(R.id.Notepadv1)).setOnClickListener( new OnClickListener() {
- public void onClick(View v) {
- startActivity(new Intent (MyAndroidAppActivity.this, Notepadv1.class) );
- }
- });
Activity跳轉,返回數據/結果
- static final int SEND_SMS_REQUEST = 0;
- static final int CALL_REQUEST = 1;
- ((Button) findViewById(R.id.sms)).setOnClickListener( new OnClickListener() {
- public void onClick(View v) {
- Intent intent = new Intent(MyAndroidAppActivity.this, SendSMSActivity.class);
- startActivityForResult(intent, SEND_SMS_REQUEST);
- }
- });
- @Override
- protected void onActivityResult(int requestCode, int resultCode, Intent data) {
- if (requestCode == SEND_SMS_REQUEST) {
- if (resultCode == RESULT_OK) {
- Toast.makeText(this, "Send SMS RESULT_OK", Toast.LENGTH_SHORT).show();
- }else if (resultCode == RESULT_CANCELED) {
- Bundle bundle = data.getExtras();
- String phoneno = bundle.getString("phoneNO");
- Toast.makeText(this, "Send SMS RESULT_CANCELED "+phoneno, Toast.LENGTH_SHORT).show();
- }
- }else if (requestCode == CALL_REQUEST) {
- if (resultCode == RESULT_CANCELED) {
- Toast.makeText(this, "Call RESULT_CANCELED", Toast.LENGTH_SHORT).show();
- }
- }
- }
- ((Button) findViewById(R.id.send)).setOnClickListener( new Button.OnClickListener() {
- public void onClick(View v) {
- SendSMSActivity.this.setResult(RESULT_OK);
- SendSMSActivity.this.finish();
- }
- }):
- ((Button) findViewById(R.id.cancel)).setOnClickListener( new Button.OnClickListener() {
- public void onClick(View v) {
- // 實例化 Bundle,設置需要傳遞的參數
- Bundle bundle = new Bundle();
- bundle.putString("phoneNO", "020-123");
- SendSMSActivity.this.setResult(RESULT_CANCELED, SendSMSActivity.this.getIntent().putExtras(bundle));
- SendSMSActivity.this.finish();
- }
- });
- @Override
- public boolean onKeyDown(int keyCode, KeyEvent event) {
- // 是否觸發按鍵爲back鍵
- if (keyCode == KeyEvent.KEYCODE_BACK) {
- // 實例化 Bundle,設置需要傳遞的參數
- Bundle bundle = new Bundle();
- bundle.putString("phoneNO", "020-123");
- setResult(RESULT_CANCELED, this.getIntent().putExtras(bundle));
- this.finish();
- return true;
- }else {
- return super.onKeyDown(keyCode, event);
- }
- }
Activity傳送數據
- // 在某個按鈕響應事件裏
- Intent intent = new Intent(this, TextInputActivity.class);
- intent.putExtra("Text", mText);
- intent.putExtra("TextColor", mTextColor);
- intent.putExtra("TextSize", mTextSize);
- intent.putExtra("TextBold", mTextBold);
- startActivityForResult(intent, REQUEST_TEXT);
- // in onCreate(Bundle savedInstanceState)
- Bundle extras = getIntent().getExtras();
- mText = extras.getString("Text");
- mTextColor = extras.getInt("TextColor");
- mTextSize = extras.getFloat("TextSize");
- mTextBold = extras.getBoolean("TextBold");
本文出自 “學習Android” 博客,請務必保留此出處http://android.blog.51cto.com/268543/323982