【问题标题】:Can I use static variable to pass data between activities instead of putExtra(Intent)?我可以使用静态变量而不是 putExtra(Intent) 在活动之间传递数据吗?
【发布时间】:2018-03-06 23:09:50
【问题描述】:

我分别有两个活动 Activity_1 和 Activity_2。现在我想在这些活动之间发送数据。我有两个选择:

1 - 使用Intent.putExtra()
2 - 使用静态变量

请告诉我在这些活动之间发送数据的最佳方法是什么。

【问题讨论】:

  • 是的,您可以使用静态变量,但最终可能会导致内存泄漏,因此使用意图传递数据是最好的方法.. aur ye questions ko downvote pta ni kon kri ja ra .. :P khair .. 去传递数据的意图.. 快乐编码
  • 很好地解释了@Adeel Turk。

标签: android


【解决方案1】:

你可以随心所欲。如果需要,您甚至可以将数据存储到数据库中,并让您的第二个 Activity 读取它。

但是Android 提供了intra-activity 通信模型,这是所有应用程序的标准。为什么不使用它?

那么,请告诉我在这些活动之间发送数据的更好方法是什么。

你已经知道答案了。

不会找到建议通过static 变量在组件之间传递数据的框架。


作为个人说明,我不明白为什么java 中允许使用public staticfinal 字段。


编辑

在我上面的回答中,我说的是动态数据。如果您关心constants,那么我不明白您为什么不应该使用public static final 字段。

【讨论】:

  • 我同意你的观点,但在某些情况下,如果需要共享 3 个活动的复杂数据,我们可能会使用静态。如案例,A->B,B->C,A、B、C都可以更新共享数据。我们可以使用intra-activity,但似乎不太方便。你对这个案子有什么想法?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-01
  • 2011-10-06
相关资源
最近更新 更多