1

我有多个课程:

  • 主要活动
  • 服务
  • 设置

通过设置,可以更改服务中我需要的某个延迟(变量)(我需要该变量的值)。

我应该如何实现这个?

  • 我应该有意识地开始设置并使其返回延迟值吗?
  • 我应该创建一个 getter,它可以在使用 mysettings.getdelay() 等创建设置实例后返回值吗?
  • 还是有另一种(/更好)的方式来做到这一点?

谢谢

[编辑]
我最终使用了类似 Ridcully 的答案。唯一的区别是我没有给出公开声明,而是使用了 getter 和 setter。人们总是告诉我使用 getter 和 setter。

4

2 回答 2

1

我应该有意识地开始设置并使其返回延迟值吗?

如果Settings是,Activity那么是。假设您的班级SettingsActivity. 您可以开始它Activity并返回一个Intent数据并根据返回的内容更改您的变量。

我应该创建一个 getter,它可以在使用 mysettings.getdelay() 等创建设置实例后返回值吗?

如果它是一个常规类而不是一个,Activity那么您可能只想设置一个getter()方法并根据传递的某些参数返回一个值。

这是获取变量的几种方法。如果您想永久存储它们,那么 Ridcully 的答案是合适的。如需更多帮助,请发布相关代码和更具体的问题。希望这可以帮助。

于 2013-04-22T18:38:08.503 回答
1

对于您的设置,您应该为此目的使用 Android 标准 - SharedPreferences。阅读此API 指南作为开始。

编辑:

为了仅在应用程序的生命周期内存储数据,您还可以使用自己的 Application 类并在其中使用变量:

自定义应用程序类:

public class MyApplication extends Application {

    public static int delay = 0;

}

在 AndroidManifest.xml 中:

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:name=".MyApplication">
于 2013-04-22T18:23:48.477 回答