1. 程式人生 > >在activity之間通過靜態變量傳遞數據

在activity之間通過靜態變量傳遞數據

idg color 傳輸數據 簡單 靜態 打開 button點擊 and etc

在activity之間通過靜態變量傳遞數據

一、簡介

技術分享

主要作用:解決intent不能傳遞非序列化的對象

評價:簡單方便,不過intent方式更加簡單和方便

二、具體操作

1、在傳輸數據的頁面弄好數據,傳遞給接收數據的頁面

Obj1 obj=new Obj1("fry",22);
Activity01.obj=obj;

2、在接收數據的頁面顯示數據

輸出obj即可

3、具體代碼

傳輸數據的頁面

Intent intent=new Intent();//初始化intent
intent.setClass(MainActivity.this,Activity01.class);//連接
Obj1 obj=new Obj1("fry",22);


Activity01.obj=obj;
startActivity(intent);//打開activity

接收數據的頁面

public static Obj1 obj;

setContentView(R.layout.activity01);
textView_ans=(TextView) findViewById(R.id.textView_ans);
textView_ans.setText("obj: "+obj);

三、代碼實例

結果圖

技術分享

技術分享

代碼

activityStaticDataSend.MainActivity

 1 package activityStaticDataSend;
2 3 4 5 6 7 8 import com.example.activityStaticDataSend.R; 9 10 import android.app.Activity; 11 import android.content.Intent; 12 import android.content.Loader; 13 import android.os.Bundle; 14 import android.view.View; 15 import android.view.View.OnClickListener; 16 import android.widget.Button;
17 18 19 20 public class MainActivity extends Activity{ 21 private Button btn_openActivty;//創建一個button對象 22 protected void onCreate(Bundle savedInstanceState) { 23 super.onCreate(savedInstanceState);//父類操作 24 setContentView(R.layout.activity_main);//引入名為activity_main的界面 25 btn_openActivty=(Button) findViewById(R.id.btn_openActivity);//找id為btn_openActivity的button 26 btn_openActivty.setOnClickListener(new OnClickListener() {//設置button點擊監聽 27 28 @Override 29 public void onClick(View v) {//onclick事件 30 // TODO Auto-generated method stub 31 Intent intent=new Intent();//初始化intent 32 intent.setClass(MainActivity.this,Activity01.class);//連接 33 Obj1 obj=new Obj1("fry",22); 34 Activity01.obj=obj; 35 startActivity(intent);//打開activity 36 } 37 }); 38 } 39 }

activityStaticDataSend.Activity01

 1 package activityStaticDataSend;
 2 
 3 
 4 
 5 
 6 import com.example.activityStaticDataSend.R;
 7 
 8 import android.app.Activity;
 9 import android.os.Bundle;
10 import android.util.Log;
11 import android.widget.TextClock;
12 import android.widget.TextView;
13 
14 public class Activity01 extends Activity{
15     public static Obj1 obj;
16     private TextView textView_ans;
17     @Override
18     protected void onCreate(Bundle savedInstanceState) {
19         // TODO Auto-generated method stub
20         super.onCreate(savedInstanceState);
21         setContentView(R.layout.activity01);
22         textView_ans=(TextView) findViewById(R.id.textView_ans);
23         textView_ans.setText("obj: "+obj);
24     }
25 }

在activity之間通過靜態變量傳遞數據