传值场景
通常来说在页面之间传递数据有两种情况,Activity传递Activity、Fragment传递给Fragment。这两种情况都使用到了Bundle,只是使用的方式有一些差别。
传值方法
Activity To Activity:
Activity之间的调用需要通过Intent来实现,那么要传递的数据也需要封装到Bundle中,通过Intent传递到接收Activity中。例如如下代码:
SaveProject nTestObject = new SaveProject();
Bundle nBundle = new Bundle();
nBundle.putParcelable("PROJECT", nTestObject);
nBundle.putString("NAME", nTestObject.toString());
Intent nIteIntent = new Intent(FirstActivity.this, SecondActivity.class);
nIteIntent.putExtras(nBundle);
FirstActivity.this.startActivity(nIteIntent);
Fragment To Fragment:
Fragment之间的调用就如同普通的类一样,直接调用构造方法来实例化Fragment对象即可。建议的传值方式是通过Bundle来传递,而不是直接作为构造参数传递。首先,官方建议在每个Fragment类中实现如下的构造方法:
public static SecondFragment getInstance(Bundle bu