我知道我们不能将自定义类保存到UserDefaults。但是,在我的代码中,将GMSPlace实例保存到用户默认值并检索它是非常方便的。
理想情况下,我想提供以下功能:
func save(selectedPlace: GMSPlace) {}
func getSelectedPlace() -> GMSPlace? {}我想我应该把它转换成NSData或者把它转换成字典。我选择了第二个选项,但不知道如何从字典中检索GMSPlace实例。换句话说,目前我只知道如何做到这一点:
func save(selectedPlace: GMSPlace) {}
func getSelectedPlace() -> [String: Any]? {}发布于 2016-12-03 10:19:06
您无法在用户默认情况下保存GMSPlace,因为GMSPlace类没有确认到NSEncoding和NSDecoding协议。
但是可以通过使用NSDictionary类中的所有参数创建一个GMSPlace来实现这一点,并将新创建的NSDictionary保存到NSUserdefaults中。
当您访问agian时,从NSUserdefault获取字典并创建GMSPlace类对象。
如果您在实现中有任何查询,请通知我们。
https://stackoverflow.com/questions/40946486
复制相似问题