java - Android - 在其他 Activity 中启动多个方法

标签 java android observer-pattern

我真的是 Android 新手。

我有一个健身应用程序,用户可以在其中更改它的健身房。有几种 Activity 内容取决于用户的健身房。 一项 Activity 将展示健身房的锻炼情况,另一项 Activity 将展示健身房的运动员,等等......

What I would like, is to update all of these activities when the user change it's gym.

我知道如何在 iOS 中做到这一点,我只需要添加一个观察者 NotificationCenter.default.addObserver(),但我真的不知道如何在 android 中做到这一点。

这可能吗?如果是,如何?

最佳答案

首先,根据 Google 的说法,您的应用程序应该只包含一个入口点,换句话说,一个 Activity,并且有 Fragments 来表示应用程序的内容。

其次,为了解决您的问题,您可以使用 SharedPreferences .它有 onSharedPreferencesChangeListener(); 可用于监听信息更新(例如 GYM 名称、您的自定义用户权限、用户角色等)。当 SharedPreferences 发生变化时,您会使用 Observer pattern 通知应用程序的所有依赖对象相应地更改它们的信息。 (P.S. 可以使用 RxJava 来实现)。您还可以在所有 Fragments 中实现 SharedPreferences 更改监听器并在那里更新它们的数据。

如果出于某种原因,你想坚持在你的应用程序中使用多个 Activities,你仍然可以使用 SharedPreferences,但你不需要监听变化,你只需在 Activity onCreate(); 方法中读取偏好值并相应地创建内容(更改项目可见性、颜色等)。


这是其中一种方法。希望这能让你朝着正确的方向前进。祝你好运:)

关于java - Android - 在其他 Activity 中启动多个方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51718858/

相关文章:

java - 观察者模式: could event processor affect subject execution?

java - 在 Windows 10 中,'java' 不是内部或外部命令、可运行的程序或批处理文件

java - Dozer 排除嵌套字段

java - JPanel观察者

android - 如何使用 Intent.ACTION_CREATE_DOCUMENT 编写文件

java - Android动画顺时针

java - 使用多态参数覆盖方法

java - 带有 JSON 的 Http 415 不支持的媒体类型错误

java - 在 pdf 或 excel 中显示表情符号

java - SSLHandshakeException - Android 6.0 上的握手失败