(1)使用Intent跳轉頁面:
第一個activity:
MainActivity.java中:
Intent myIntent = new Intent(); myIntent.putExtra("myText", myTextView.getText()); myIntent.setClass(MainActivity.this, Activity2.class); startActivity(myIntent);
第二個activity:
Activity2.java中:
//從MainActiviry中跳轉到這個Activity中利用Intent傳遞數據。 //獲取Intent Intent intent = getIntent(); String text = intent.getStringExtra("myText"); textview2 = (TextView)findViewById(R.id.textView1); textview2.setText(text);
(2)如果點擊按鈕或者鏈接,打開一個網站。。。
myBtn2.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { //訪問網頁。 Uri uri = Uri.parse("http://www.baidu.com"); Intent intent = new Intent(Intent.ACTION_VIEW,uri); startActivity(intent); } });
(3)使用Bundle傳遞參數
源Activity中:MainActivity.java
//使用Bundle傳遞參數到另一個Activity BundleBtn.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { //使用Bundle傳遞參數 Intent myIntent = new Intent(); Bundle bundle = new Bundle(); bundle.putString("info",myEditText.getText().toString()); myIntent.putExtras(bundle); myIntent.setClass(MainActivity.this, Activity3Bundle.class); startActivity(myIntent); } });
目標Activity:Activity3Bundle.java
public class Activity3Bundle extends Activity { private TextView textView3; @Override protected void onCreate(Bundle savedInstanceState) { // TODO 自動生成的方法存根 super.onCreate(savedInstanceState); setContentView(R.layout.activity3); textView3 = (TextView)findViewById(R.id.textView3); Bundle myBundle = this.getIntent().getExtras(); String myText = myBundle.getString("info"); textView3.setText(myText); } }
(4)使用Bundle傳遞參數,第一個Activity點擊一個按鈕,跳轉到第二個頁面。第二個頁面輸入一個內容,點擊按鈕,返回第一個Activity,並將第二個Activity中輸入的內容顯示在第一個Activity中。
第一個Activity代碼:
import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; public class MainActivity extends Activity { private TextView myTextView; private Button ZhuceBtn; private final static int REQUESTCODE = 1;//返回的結果碼 //Intent private Intent MyIntent; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); myTextView = (TextView)findViewById(R.id.textView1); ZhuceBtn = (Button)findViewById(R.id.buttonzhuce); //使用Intent向另一個Activity發送請求,使用Bundle返回參數 ZhuceBtn.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View v) { // TODO 自動生成的方法存根 MyIntent = new Intent(); MyIntent.setClass(MainActivity.this, Activity3Bundle.class); startActivityForResult(MyIntent,REQUESTCODE); } }); } @Override protected void onActivityResult(int requestCode,int resultCode,Intent data) { // TODO Auto-generated method stub super.onActivityResult(requestCode, resultCode, data); if(requestCode==REQUESTCODE){ if(resultCode==2){ setTitle("Cancel****"); }else if(resultCode==1){ // String Name=data.getStringExtra("username"); Bundle bundle = data.getExtras(); String Name = bundle.getString("username"); myTextView.setText("恭喜您,注冊成功。您的用戶名是:"+Name); } } } }
第二個Activity:
public class Activity3Bundle extends Activity { private Button zhuceBtn; private EditText zhuceEdit; private Button buttonCancle;//取消按鈕 @Override protected void onCreate(Bundle savedInstanceState) { // TODO 自動生成的方法存根 super.onCreate(savedInstanceState); setContentView(R.layout.activity3); zhuceEdit = (EditText)findViewById(R.id.editTextzhuce); zhuceBtn = (Button)findViewById(R.id.buttonzhuce); buttonCancle = (Button)findViewById(R.id.buttonCancle); zhuceBtn.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View v) { //將參數傳回請求的Activity Intent zhuceIntent = new Intent(); Bundle myBundle = new Bundle(); myBundle.putString("username", zhuceEdit.getText().toString()); //zhuceIntent.putExtra("username", zhuceEdit.getText().toString()); zhuceIntent.putExtras(myBundle); setResult(1,zhuceIntent); finish(); } }); buttonCancle.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View v) { //將參數傳回請求的Activity Intent zhuceIntent = new Intent(); setResult(2,zhuceIntent); finish(); } }); } }