Objective C - 在 viewDidLoad 中设置变量并在其他地方使用它
另一个客观的c问题给你。可能也是一个简单的...
在我的 viewDidLoad 方法中,我正在设置一个变量。我需要在 - (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
中访问它,但是我收到以下错误,但我没有真的知道排序的方法!
-[CFString intValue]:发送到已释放实例 0x592dcb0 的消息
- (void)viewDidLoad
{
//code to get json is here
totalInCategory = [parsedJson objectForKey:@"TotalInCategory"];
NSLog(@"totalincat %i",[totalInCategory intValue]);
[super viewDidLoad];
}
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)celllforRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"totalincat %i",[totalInCategory intValue]);
if((indexPath.row == [myArray count]-1)&&(indexPath.row < [totalInCategory intValue]))
{
//code to get more rows
[self.tableView reloadData];
}
}
我有 NSString *totalInCategory;建立并综合。
TotalInCategory 在 viewDidLoad 中很好(据我所知),但在其他地方......任何想法都会非常方便!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
保留数据...
objectForKey 返回一个自动释放的对象,如果您想使用它,您需要保留该对象。不要忘记在 dealloc 中添加
[totalInCategory release];
。Retain the data...
objectForKey returns an autoreleased object which you need to retain if you wish to use it. Don't forget to add a
[totalInCategory release];
in the dealloc.put:
[totalInCategory keep]
就在totalInCategory = [parsedJson objectForKey:@"TotalInCategory"];
下面,这将保留当前由
objectForKey 自动释放的变量方法。
put:
[totalInCategory retain]
just belowtotalInCategory = [parsedJson objectForKey:@"TotalInCategory"];
That will retain the variable, which is currently autoreleased by the
objectForKey
method.在不知道 parsedJson 类型的情况下,我无法确定,但您似乎缺少保留。
在类的 dealloc 方法中添加
您可能还应该看一下 iOS 内存管理编程指南(如果您还没有)。
Without knowing the type of parsedJson I can't be sure, but it seems likely that you're missing a retain.
And in the dealloc method for the class add
You should probably also take a glance at the iOS Memory Management Programming Guide if you haven't already.
将
totalInCategory
与self
结合使用。如果您在属性声明中指定了retain。Use
totalInCategory
withself
. if you have specified retain in the property declaration .