2014-08-29 23 views
0

在IOS,我們呼籲在的ViewControllerActivity in Android),並可以將它設置屬性,如在構造函數發送數據或其他活動使用功能

AnyViewController *view = [[AnyViewController alloc]initWithNibName:@"layoutFile]; 

[view setName:@"AnyName"]; 

[self presentViewController:view ... blah blah]// new View is created and we have set its data using setName where Name is an attribute in AnyViewController class. 

現在的問題是我們如何才能設置此而產生的意圖

Intent inten = new Intent(PresentActivity.this,NextActivity.class); 

有沒有像之前或之後的任何方式調用此NextActivity.class.setName(「anyName」);或者通過一些數據的構造函數,我們通過上下文而調用的AsyncTask

new AsyncTask(PresentActivity.this).exectue(); 

編輯...

我知道所有的方法來發送活動之間的數據。

  1. 序列化
  2. Intent.putExtra( 「的keyName」,類型)
  3. Parcelable
  4. 創建靜態變量和任何其他活性得到它(它是對OOP)

我想知道是否有任何方法在構造函數中發送數據或調用任何公共方法,正如我所說的..我可能是錯誤的,我想知道是否有任何種類的方法,如設置屬性或在構造函數中發送數據。 。

NextActivity(context).classNextActivity.class.setName();

這是可能的,如果沒有,爲什麼呢?

回答

0

你可以通過一些DATAS像,其他活動:

inten.putExtra('name of your data', yourdata); 

如果你有一些DATAS,使用組合:

Bundle bundle = new Bundle(); 
bundle.putXXX('name of your data', yourdata); 

inten.putExtras(bundle); 

在你的另一項活動,使用:

getIntent().getExtras().getXXX('name of your data'); 
0

最好的方法是使用intent方法傳遞值(putExtra,getStringExtra)像:

 Intent i = new Intent (PresentActivity.this, NextActivity.class); 
     i.putExtra("setName", AnyName); 
     startActivity(i); 

好了,現在在NextActivty類的onCreate方法,你能接受它:

 String anyName; 
     Intent i = getIntent(); 
     AnyName = i.getStringExtra("setName"); 
相關問題