【问题标题】:(Android) Which is better a Bundle or Application?(Android) Bundle 或 Application 哪个更好?
【发布时间】:2012-03-07 18:47:29
【问题描述】:

我正在开发一个从数据库中提取数据的 android 应用程序。我要传递数据 活动之间(单个字符串)。我最初使用 Bundle 功能实现了数据传递。但是,我遇到了允许从任何活动访问变量的 Application 类。

您会推荐使用哪种方法在活动之间移动数据?

public class MyVideo extends Application {

  private String url ="NULL";

  public String getUrl(){
    return url;
  }
  public void setUrl(String newurl){
    url = newurl;
  }

}

【问题讨论】:

  • Bundles 适用于预定义的数据类型,但是当您有自定义对象并且需要实现 Parcelable 时,样板代码和麻烦就太多了。我更喜欢使用 Application 来传递数据。我觉得它更直观。

标签: android bundle


【解决方案1】:

这类似于这个问题What is a "bundle" in an Android application,其中包含一个带示例的综合答案。

我的回答是你会使用一个捆绑包,因为这是它们的设计目的,并且很容易使用。该捆绑包支持字符串,无需进行任何额外工作,因此我认为它非常理想。

添加到意图

intent.putExtra("myKey",AnyValue);  

检索:

Bundle extras = intent.getExtras(); 
String tmp = extras.getString("myKey");

【讨论】:

    【解决方案2】:

    应用程序类将在您的上下文中表现为单例类。您可以使用单例类本身在活动之间传递数据。如果您只想在活动之间传递数据,则无需使用 Application 类。

    Bundle 更适合用于传递数据 b/w 活动。

    【讨论】:

      猜你喜欢
      • 2014-07-09
      • 2012-10-13
      • 1970-01-01
      • 2013-03-16
      • 1970-01-01
      • 2011-02-22
      • 2013-06-06
      • 2013-11-02
      • 1970-01-01
      相关资源
      最近更新 更多