【问题标题】:PreferenceActivity calling methods of the main activity主Activity的PreferenceActivity调用方法
【发布时间】:2014-02-19 01:11:59
【问题描述】:

在我的 Android 应用程序中,我刚刚创建了一个用户设置活动(扩展 PreferenceActivity)。
我想要一些设置/按钮来触发我的主要活动中的一些方法。我该怎么做?

a) 将我的主要活动中的所有内容设为静态? (似乎不是一个好主意)

b) 打开用户设置时将主要活动作为 Parcelable 发送? (putExtra())

c)(另一个建议?)

【问题讨论】:

  • 你能以 startActivityForResult() 的形式启动设置活动吗?
  • 嗨。为什么会有帮助?不是只有用户关闭设置才会给出结果吗?
  • 您实际上想从主要活动中调用什么?你能给我们举个例子吗?

标签: android sharedpreferences preferenceactivity


【解决方案1】:

我不知道你具体在做什么,但由于它是首选项,我会将我的首选项保存在 SharedPreferences 中,然后我会让我的 MainActivity 实现 SharedPreferences.OnSharedPreferenceChangeListener 并在正确的首选项发生更改时调用它的方法。

【讨论】:

  • OnSharedPreferenceChangeListener。这就是我需要知道的!!!非常感谢。
【解决方案2】:

方法需要立即执行吗? 您能否不使用 startActivityForResult(),然后每当更改需要在主活动中调用方法的设置时,在结果意图中设置标志或其他内容? 那么当preferenceActivity结束,回到主Activity时,你可以检查返回的intent并执行任何必要的方法吗?

如果我在说垃圾,请道歉!

【讨论】:

  • DavidCAdams 上面的回答要好得多!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-26
  • 2018-07-29
  • 1970-01-01
  • 1970-01-01
  • 2012-08-17
相关资源
最近更新 更多