NSCache一直给我(null)

时间:2012-09-25 12:32:14

标签: objective-c nscache

我将NSString保存到NSCache但是在NSLog给我(null)。

我在ViewDidLoad

初始化后,我将此代码保存在NSCache中
cache=[[NSCache alloc]init];

然后我有一个被调用的函数并保存对象

 NSIndexPath *indexPath = [NSIndexPath indexPathForRow:1 inSection:1];
 NSString *res = [cache objectForKey:indexPath];
 if (!res) {                      
     res=@"1";
     [cache setObject:res forKey:indexPath];
 }

然后我这样检查:

NSString *res = [cache objectForKey:indexPath];
if (!res) {    
    res=@"1";
    [cache setObject:res forKey:indexPath];
}

...不幸的是

NSLog("%@",res); //always it gives me (null)

以前有人遇到过这个问题吗?任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

保存对象后,请按以下方式检查:

NSIndexPath *indexPath = [NSIndexPath indexPathForRow:1 inSection:1];
NSLog(@"%@",[cache objectForKey:indexPath]);