ObjectForKey始终返回null xamarin.ios
我曾尝试在Xamarin.iOS设置id中使用NSCache将字符串设置到缓存中,没有问题,但当尝试获取此缓存值时总是返回null,任何人都可以提供帮助吗ObjectForKey始终返回null xamarin.ios,xamarin.ios,Xamarin.ios,我曾尝试在Xamarin.iOS设置id中使用NSCache将字符串设置到缓存中,没有问题,但当尝试获取此缓存值时总是返回null,任何人都可以提供帮助吗 /*set*/ public static void AddCachedString(NSString key, NSString Value) { cacheProvider.SetObjectforKey(key, Value); } /*get*/ public static NSString GetCachedString(
/*set*/
public static void AddCachedString(NSString key, NSString Value)
{
cacheProvider.SetObjectforKey(key, Value);
}
/*get*/
public static NSString GetCachedString(NSString key)
{
return (NSString)cacheProvider.ObjectForKey(key);
}
方法
公共虚拟void SetObjectforKey(nsobjectobj,nsobjectkey)
有两个参数value和key,您只是在顺序上犯了一个错误。第二个参数是关键
您应该修改自己的方法,如:
cacheProvider.SetObjectforKey(Value, key);
通过这种方式,您可以使用正确的键字符串获取此值。此外,请注意:
通常使用NSCache对象临时存储对象
创建成本高昂的瞬态数据。但是,这些对象对应用程序并不重要,如果内存紧张,可以丢弃它们
如果要持久化数据,可以尝试。问题解决了吗?我尝试了另一种使用NSUserDefaults从缓存中保存和获取值数据的方法,我使用了它的两种方法set&get,并且工作正常。感谢您的关注。您的设备为我带来了正确的输出再次感谢。很高兴它帮助了您。您能标记并关闭此帖子以帮助其他社区了解NSCache吗