我现在开始使用android,我想知道哪个是将对象从一个活动传递到另一个活动的最佳方法。
到目前为止我已经
了我应该使用哪一个? 感谢
答案 0 :(得分:0)
创建意图对象时,可以使用以下两种方法 用于在两个活动之间传递对象。
您可以使用Parcelable或Serializable来实现此类工作。
然后,您可以跨活动传递自定义类。我发现这非常有用。
以下是我正在使用的一小段代码
CustomListing currentListing = new CustomListing();
Intent i = new Intent();
Bundle b = new Bundle();
b.putParcelable(Constants.CUSTOM_LISTING, currentListing);
i.putExtras(b);
i.setClass(this, SearchDetailsActivity.class);
startActivity(i);
在新开始的活动代码中会是这样的......
Bundle b = this.getIntent().getExtras();
if(b!=null)
mCurrentListing = b.getParcelable(Constants.CUSTOM_LISTING);
此外,您可以让自定义类实现Serializable
接口,然后您可以使用putExtra(Serializable..)
方法的Intent#putExtra()
变体在intent中传递对象实例。
PSEUDO代码:
//to pass :
intent.putExtra("MyClass", obj);
// to retrieve object in second Activity
getIntent().getSerializableExtra("MyClass");