2011-02-01 24 views
0

我正在从核心数据加载一个TableView,它的工作原理就像一个魅力。数据包含两个字段:类别和距离。表的初始加载使用一个数组,其中基于距离排序的对象。我在导航栏中有一个按钮,我希望用户在按距离排序的视图(默认设置)和按类别排序的视图之间切换。我的切换代码是:另一个tableview刷新问题

-(void)toggleView { 

    NSString *baseItem = @"Proximity View"; 
    NSString *currTitle = self.title; 
    NSComparisonResult result; 
    result = [baseItem compare:currTitle]; 

    if (result == 0) { 
     self.title = NSLocalizedString(@"Category View",@"Categories"); 
     tpData = tpDataCat; //tpDataCat is an array sorted by Category 
     [self.tblView reloadData]; 
    } else { 
     self.title = NSLocalizedString(@"Proximity View",@"Distances"); 
     tpData = tpDataDist; //tpDataDist is an array sorted by Distance 
     [self.tblView reloadData]; 
    } 

    [baseItem release]; 
    [currTitle release]; 
} 

当我点击切换按钮并触发`toggleView时,应用程序崩溃。任何帮助将不胜感激!!

回答

1

你不应该释放baseItem和currTitle。

我会推荐阅读Memory Management Programming Guide;这是一个很好的文件,可以提供关于对象的适当所有权以及何时需要释放的背景信息。