从应用程序内更改当前位置
Posted
技术标签:
【中文标题】从应用程序内更改当前位置【英文标题】:Change Current Location from within the app 【发布时间】:2013-07-31 10:12:49 【问题描述】:我遇到了用户当前位置的问题。
我有一个应用程序,我在其中显示用户当前位置附近发生的事件。到目前为止一切都很好,但从现在开始我必须实现改变城市的功能。如果我改变城市,那么附近的事件也会分别改变。我想知道我是否能够从应用程序中更改我当前的位置。或者换句话说,我可以从我的应用程序中更改手机设置中的位置。任何建议都会有所帮助。
谢谢
【问题讨论】:
你说的是手机设置应用中的区域格式吗? 问得好,如果你的纬度比你可以分别更新你的地图。 @Hirengardhariya-嗨!兄弟,但下次当位置管理器为当前位置触发时,它会再次设置我拥有的位置,而不是我选择的位置 我了解,因为您必须将所选位置的纬度、经度保存到默认首选项中。当您再次检查首选项是否比当前位置空时。如果首选项不为空,则当前位置 = 首选项文件值。 您的问题是如何解决的? 【参考方案1】:您无法从设置中更改您的当前位置。
如果您想将所选城市保存为当前位置,则保存所选城市的经度和纬度,并将其作为您的当前位置传递给获取附近事件的方法,因此它应该作为您的当前位置。
您可以将您选择的城市经纬度保存在首选项文件(或 .plist)中。当位置自动更新时,您可以检查用户是否选择了城市,然后您传递所选城市的纬度和经度,否则您当前的位置经度。这样你会更容易。
希望对你有帮助!!
【讨论】:
亲爱的你好,但我有使用位置管理器,它将使用我在设置中保存的位置,它会在触发时相应地更改位置 好的,但是你有任何例子 朋友很简单。当用户选择任何城市时,只需保存所选城市的经纬度。并在 locationchangelistener 中添加一个条件,即如果文件中保存了数据,则传递该 lat n long。否则为当前位置。 好的,我看到了,因为我直到现在还没有制作共享首选项文件;) 如果您不希望该选定的城市将来使用意味着当您再次加载时,如果您不想要该数据,那么您可以只使用 hashmap 的类变量,以便您可以存储选定的城市数据在其中并在您喜欢的任何地方使用,并且会在活动完成后被删除。【参考方案2】:如果您有新城市的经纬度,那么您可以将经纬度设置为位置坐标 ....然后您也可以更新事件..
【讨论】:
但是在下次位置管理器为当前位置触发时,它会再次设置我拥有的位置,而不是我选择的位置 您要保存上次选择的位置吗? 是的,和你想的一样 如果您想保存上一个位置,那么您可以使用 NSUserdefault 保存它,下次位置管理器启动时您可以轻松使用保存的位置坐标...【参考方案3】:您无法更改当前位置,但您可以通过获取城市的纬度来做到这一点。
http://maps.googleapis.com/maps/api/geocode/json?address=jaipur&sensor=false
使用它您可以获得其他城市的纬度并将其作为您当前的位置传递以获取附近的事件。
这是与地图相关的不错链接Link
【讨论】:
以上是关于从应用程序内更改当前位置的主要内容,如果未能解决你的问题,请参考以下文章
NAudio:如何在使用 AudioFileReader 和 WaveOutEvent 更改播放位置时准确获取当前播放位置