当用户通过带有 Android 的地图中的特定位置时如何显示消息?
How to display a message when a user is passing a specific location from a map with Android?
我想在地图上添加 5 个标记(城市位置),每当用户经过附近时,我想向用户显示一条消息:You have just passed the first location, then second location and so on
。
我怎样才能做到这一点?我什至可以使用 Firebase?
好吧,由于问题细节相当不明确,以下是我个人将如何解决问题的相当宽泛的答案:
据我了解,问题分为以下几个部分:
- 在地图上显示标记
- 侦听用户位置
- 比较用户位置与标记位置
- 显示消息
在地图上显示标记
我假设您正在考虑使用 Google 地图 API 来这样做,因此我建议您查看以下内容:Adding a map with a marker
监听用户位置
侦听用户位置在以下文档中进行了说明:Location Strategies。列出了多种方法来说明如何获取用户位置,以满足您的特定需求。
比较用户位置与标记位置
我个人建议在这里使用您的 Noodle。我无法为您考虑所有问题,但您必须以某种方式存储并访问标记的位置坐标,以便与用户的位置更新进行比较。我还会跟踪 'checkpoint' 是否已被访问,以避免过度显示消息。
正在显示消息
最后但同样重要的是,消息的显示。我会使用 Toasts 向用户显示他们已通过检查点。一个聪明的方法是在 onLocationChanged 方法中发生这种情况,您必须重写该方法以侦听位置更新,并在比较位置方法告诉您时简单地显示祝酒词。
我个人认为不需要为此添加 firebase,因为不需要从数据库存储或获取数据。一切都可以在本地完成。
P.S。如果对您有帮助,请不要忘记将其标记为正确答案!
我想在地图上添加 5 个标记(城市位置),每当用户经过附近时,我想向用户显示一条消息:You have just passed the first location, then second location and so on
。
我怎样才能做到这一点?我什至可以使用 Firebase?
好吧,由于问题细节相当不明确,以下是我个人将如何解决问题的相当宽泛的答案:
据我了解,问题分为以下几个部分:
- 在地图上显示标记
- 侦听用户位置
- 比较用户位置与标记位置
- 显示消息
在地图上显示标记
我假设您正在考虑使用 Google 地图 API 来这样做,因此我建议您查看以下内容:Adding a map with a marker
监听用户位置
侦听用户位置在以下文档中进行了说明:Location Strategies。列出了多种方法来说明如何获取用户位置,以满足您的特定需求。
比较用户位置与标记位置
我个人建议在这里使用您的 Noodle。我无法为您考虑所有问题,但您必须以某种方式存储并访问标记的位置坐标,以便与用户的位置更新进行比较。我还会跟踪 'checkpoint' 是否已被访问,以避免过度显示消息。
正在显示消息 最后但同样重要的是,消息的显示。我会使用 Toasts 向用户显示他们已通过检查点。一个聪明的方法是在 onLocationChanged 方法中发生这种情况,您必须重写该方法以侦听位置更新,并在比较位置方法告诉您时简单地显示祝酒词。
我个人认为不需要为此添加 firebase,因为不需要从数据库存储或获取数据。一切都可以在本地完成。
P.S。如果对您有帮助,请不要忘记将其标记为正确答案!