android - 如何将类对象传递给 Activity

标签 android android-intent android-fragments android-activity

我有一个 BarcodeReaderActivity我将在几个 Activity 中开始,然后再开始 Activity , 我想传递一个目的地 Activity这个类 BarcodeReaderActivity所以在阅读二维码后,我希望它打开目的地 ActivityIntent .

我的第一个解决方案是将目标类名作为字符串传递并在 BarcodeReaderActivity 中使用 switch case并写具体Intent对于那个类。

我还尝试创建 BarcodeReader作为Fragment首先但是当我开始目的地时Activity然后删除 Fragment它显示以前的 Activity很短的时间,但我不希望这种情况发生。

如果你知道更好的方法,我想从你那里得到一些建议。

最佳答案

您可以在 BarcodeReaderActivity 之外构建所需的 Intent 并将其作为额外传递。如果需要,您稍后可以在 BarcodeReaderActivity 中更改此 Intent 。 像这样:

Intent finalIntent = new Intent( context, FinalActivity.class );
Intent barcodeIntent = new Intent( context, BarcodeReaderActivity.class );
barcodeIntent.putExtra( "finalintentkey", finalIntent);
context.startActivity(barcodeIntent);

然后在您的 BarcodeReaderActivity 中检索 Intent (并根据需要修改它):

Intent finalIntent = getIntent().getParcelableExtra( "finalintentkey" );
// if needed modify intent here
finalIntent.addExtra( "somekey", someneededvalue );
startActivity( finalIntent );

// BarcodeReaderActivity can be finished now
finish();

关于android - 如何将类对象传递给 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30145158/

相关文章:

android - 在 Android 上连接到 IBM VPN

android - MapView 谷歌地图 NullPointerException?

android - Android Fragment中的Retrofit2如何正确实现?

android - 如何在xml中的框架布局中嵌套约束布局?

android - 如何在android中的某些条件下在最近的sdk版本中重复通知?

Java Picasa API 目录列表不起作用

android - 按应用查找和管理所有 YouTube 上传内容

回调完成后Android完成 Activity

android - 如何让安卓手机手电筒闪烁?

android - 文字说明未在 Facebook 上分享