2012-06-24 27 views
0

我的應用程序中有兩個活動,分別是EMPID和INFO。 在EMPID活動中,我有一個EditText說empid和另一個活動信息我有另一個EditText名稱。無法找到活動之間的值

我可以在每個活動中使用按鈕在這些活動之間切換。

但我希望當我切換到第二個活動並返回到第一個活動時顯示empid的值。

任何人都可以幫助這些。

謝謝您提前。

回答

0

當您撥打第二個活動時使用startActivityForResult()。這會將第一個活動保持在之前的狀態,您可以在切換回第一個活動時維持empid

如果要將empid的值發送到第二個活動,您可以使用intent.putExtra()

0

您需要putExtrasgetIntExtras

下面片斷會幫助你。

EMPID.java

Intent intent=new Intent(this,INFO.class); 
intent.putExtra("id", empid); 
startActivity(intent); 

INFO.java

int empId=getIntent().getIntExtra("id", 0); 
1

更改代碼作爲用於從第一個活動發送數據到第二:

@Override 
    public void onClick(View v) { 
    // TODO Auto-generated method stub 
    /*Create new Intent Object, and specify class*/ 
    Intent intent = new Intent(); 
    intent.setClass(EMPID.this,INFO.class); 
    /*new Bundle Object, and put data in bundle object*/ 
    Bundle bundle = new Bundle(); 
    bundle.putString("EMPID ","empid"); 
    /*Put Bundle object i.e bundle in intent*/ 
    intent.putExtras(bundle); 
    EMPID.this.startActivity(intent); 
@Override 
public void onResume() 
{ 
    //SET EDITVIEW VALUE HERE to EMPID 
    super.onResume(); 
} 

在活動信息:

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.receivermain); 
    TextView txtvwreceived=(TextView)findViewById(R.id.txtviewsender); 
    /* Intent To obtain the bundle object from EMPID */ 
    Bundle bundle = this.getIntent().getExtras(); 
    /* Obtain String from Intent */ 
    if(bundle !=null) 
    { 
     /* Obtain Data from bundle object */ 
     String strdata = bundle.getString("EMPID"); 
     } 
    } 

和第二方式使用startActivityForResult()啓動第二活性(INFO.class)和覆蓋第一活性(EMPID.class)onActivityResult方法用於設置EditView中值。