仅在获取用户位置后获取 Firebase/Geofire 数据
Fetch Firebase/Geofire data only after getting user location
我正在开发一个应用程序,该应用程序使用 GeoFire 仅从距离用户位置 10 公里半径范围内的 Firebase 获取数据。然后填充一个 CollectionView。
问题:
当网速很慢时,它会加载没有数据的 CollectionView。可能是因为手机还没有时间获得准确的用户位置。
我在 ViewDidLoad() 中有我的 fetchData() 函数。
如何才能在用户定位完成后才执行 fetchData() 函数?
所需流量:
- 启动应用程序
- 获取用户位置
- 仅在获取用户位置后用数据填充 CollectionView
- 加载 CollectionView
将您的获取数据函数放在 ViewDidLoad 之外
func fetchData(){
etc.
}
当位置到达时调用它:
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
guard let location = manager.location else {return}
etc.
fetchData()
}
我正在开发一个应用程序,该应用程序使用 GeoFire 仅从距离用户位置 10 公里半径范围内的 Firebase 获取数据。然后填充一个 CollectionView。
问题:
当网速很慢时,它会加载没有数据的 CollectionView。可能是因为手机还没有时间获得准确的用户位置。
我在 ViewDidLoad() 中有我的 fetchData() 函数。
如何才能在用户定位完成后才执行 fetchData() 函数?
所需流量:
- 启动应用程序
- 获取用户位置
- 仅在获取用户位置后用数据填充 CollectionView
- 加载 CollectionView
将您的获取数据函数放在 ViewDidLoad 之外
func fetchData(){
etc.
}
当位置到达时调用它:
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
guard let location = manager.location else {return}
etc.
fetchData()
}