【问题标题】:How can i create new instance of same activity without change satic variables in android?如何在不更改 android 中的静态变量的情况下创建相同活动的新实例?
【发布时间】:2016-02-20 23:05:18
【问题描述】:

我有一个包含一些静态变量的活动,例如 Bundle 等,在我的应用程序中,我使用不同的附加功能启动当前活动的新实例:

Intent intent=new Intent(getContext(),ActivityMain.class);
                    intent.putExtra("massId",pi.publisherId);
                    intent.putExtra("username",pi.userName);
                    intent.putExtra("avatar", pi.avatar);
                    startActivity(intent);

它开始时没有任何问题并加载新数据,但是当我按下后退按钮时,静态变量已被新实例更改。我使用视图寻呼机,我必须使用一些静态变量。 我如何启动一个活动的多个实例,因为每个实例都有自己的变量

【问题讨论】:

  • 如果您希望每个实例都有自己的变量,那么不要将它们设为静态。
  • 我在没有静态变量的情况下实现了我的 senarios,感谢 Karakuri,它就像魅力一样工作
  • 很好,我会将其转为答案,以便您接受。

标签: android android-activity static android-viewpager android-recyclerview


【解决方案1】:

静态变量不属于类的实例;它们由类本身持有,并由类的所有实例共享。如果您希望每个实例都有自己的变量,请不要将它们设为静态。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-23
    • 1970-01-01
    • 1970-01-01
    • 2022-01-19
    相关资源
    最近更新 更多