我正在开发一个项目,该项目使用地理围栏并在进入和退出这些地理围栏时存储某些数据,并希望在表格中显示这些数据。
我在应用程序委托(delegate)中使用 didEnterRegion 和 didExitRegion 函数,并希望能够从这些函数修改单元格,但我不太确定如何从应用程序委托(delegate)引用表格 View 中的单元格。
如果我想更改引用单元格中的数据,但我不确定如何使用此方法从应用程序委托(delegate)进行更改,我当前正在使用静态单元格并在与 TableView Controller 相关的类中建立 IBOutlet 连接。
我很高兴完全改变整个方法以获得更好的方法,因为这目前对我不起作用,但如果有一种方法可以做到这一点,这与我目前所做的事情相关(虽然不多,但我了解这个方法)。
谢谢!
最佳答案
进入和退出地理围栏时,您的表格 View 单元格必须更改。
因此您的表格 View 单元格需要根据其他类进行更改。
- 使用 TableView Controller 调用的方法创建一个协议(protocol)。
示例:
protocol GeoFenceDelegate {
didEnter() -> Bool
didExit() -> Bool
}
创建一个类
GeoLocation
来处理所有地理围栏。让
GeoLocation
符合GeoFenceDelegate
您的 TableView Controller 应具有对指向
GeoLocation
的GeoFenceDelegate
的弱
引用在您的
cellForRowAtIndexPath
中调用GeoFence
的方法并相应地更新您的单元格。此外,本地理位置发生变化时,您可以在主线程上发布通知
TableView Controller 可以观察这些通知并重新加载表中的单元格
关于ios - 通过应用程序委托(delegate)从 TableView Controller 更改单元格内的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41354971/