2014-03-26 140 views
0

我注意到活動之間的共享數據可以使用2種方法執行!Android活動之間共享數據的兩種不同方法

第1種方法:

Intent myIntent = new Intent (view.getApplication,myActivity.class); 
myIntent.putExtra("data","value"); 

第2種方法:

Intent myIntent = new Intent (view.getApplication,myActivity.class); 
Bundle myBundle = new Bundle(); 
myBundle.putString("data","data"); 
myIntent.putExtra(myBundle); 

我的問題這裏是實際上是那些2種方法之間的區別?

回答

0

Intent.java源代碼可以看出,傳遞給Intent的數據總是被序列化爲Bundle對象。所以區別是"how your data will be serialized/deserialized"

public Intent putExtra(String name, String value) { 
    if (mExtras == null) { 
     mExtras = new Bundle(); 
    } 
    mExtras.putString(name, value); 
    return this; 
} 

public Intent putExtra(String name, Bundle value) { 
    if (mExtras == null) { 
     mExtras = new Bundle(); 
    } 
    mExtras.putBundle(name, value); 
    return this; 
} 
+0

這有助於,謝謝澄清;) –

相關問題