Android 应该使用哪个包传递对象
我想将一个对象从一个活动传递到一个片段。我知道如何传递数据,但不知道应该使用哪种类型的Android 应该使用哪个包传递对象,android,bundle,start-activity,Android,Bundle,Start Activity,我想将一个对象从一个活动传递到一个片段。我知道如何传递数据,但不知道应该使用哪种类型的bundle 更新 换句话说,我有一个类型为mqttAndroidClient的对象,我想通过包将该对象从我的活动传递到片段。我应该使用哪种捆绑类型?您应该使用如下内容: 使包含要传递的所需数据的自定义类可从序列化或可打包扩展,并将对象作为附加对象放入Bundle对象,并将Bundle设置为片段的参数 在您的活动中 ... Fragment fragment = new YourFragment(); Bund
bundle
更新
换句话说,我有一个类型为
mqttAndroidClient
的对象,我想通过包将该对象从我的活动传递到片段。我应该使用哪种捆绑类型?您应该使用如下内容:
使包含要传递的所需数据的自定义类可从序列化或可打包扩展,并将对象作为附加对象放入Bundle
对象,并将Bundle
设置为片段的参数
在您的活动中
...
Fragment fragment = new YourFragment();
Bundle bundle = new Bundle();
bundle.putString("data", "yourData");
fragment.setArguments(bundle);
...
在您的片段中
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
String data = getArguments().getString("data");
...
}
对于相对简单的对象数据类型,根本不需要捆绑包。当您在使用参数的片段中重写onCreate()时,只需添加一行代码即可从意图中获取数据
例如,如果要传递一个整数,则该行为:
intvar = (int)getActivity().getIntent().getInt(SOME_IDENTIFIER);
其中,某个_标识符是活动和片段共用的常量。(它看起来像“com.yourpackage.yourapp.some_identifier”。谢谢,但我知道如何传递数据,但我不知道应该使用哪种类型的包来传递对象。如果您的类只使用基本数据类型,则可以使用包来代替包。请参阅