繁体   English   中英

在Android中的活动与传递对象之间切换

[英]switching between Activities in Android AND passing objects

我的android应用程序有很多Activities
到目前为止,每次启动新Activity时,我都会调用Finish()

因此,我的上一个活动已被完全销毁,当用户按下“后退”按钮时,我将完成当前活动并开始上一个活动的新Intent

这使我的应用程序运行非常缓慢,因为每次启动活动时都必须运行OnCreate

如果我没有完成前一个活动,那么如何在不完成前一个活动的情况下调用上一个活动? 用户将多次打开相同的活动。

当他们在活动之间切换时,我也想使用.PutExtra()

这就是我现在正在做的:

Intent intent = new Intent (this, typeof(AddNewActivity));
var json = JsonConvert.SerializeObject (myDataObject);
intent.PutExtra ("myDataObject", json);
StartActivity (intent);
Finish ();

因此,基本上,我的问题是我如何不能每次都不启动一个新的Activity而仍然在两个或多个活动之间传递数据?

谢谢。

一个简单的解决方案是每次去一个新活动时都不调用“ finish()”。 如果您采用这种方法,则后退按钮会将用户带回到上一个活动的现有实例。 因此,您可以绕过onCreate及其内部的所有耗时操作。

至于传递数据:请使用Intents。 启动新活动时,请调用startActivityForResult。 这将使您能够:

  • 将数据传递给Intent中的新Activity。
  • 完成新的活动后,将数据传递回原始活动。

请参阅: http : //developer.android.com/training/basics/intents/result.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM