解決方法がわからない単純な問題に直面しています。ARC が関与しているように見えますが、どこでどのように手がかりがありません。viewWillAppear で、sqlite から取得した int の値を確認し、その値をインスタンスの int var に割り当てます。
viewWillAppear で NSLogs を設定すると、kStatus.grade が正しい値を取得し、その値をインスタンス var _currentGrade に割り当てた後、_currentGrade が同じ int 値を取得することが示されます。viewWillAppear が終了すると、魔法が起こります。_currentGrade はその値を失い、デフォルトの 0 を取得します。
悪がどこにいるのか興味があります。
@property (nonatomic)int currentGrade;
-(void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
DBAccess *acc=[[DBAccess alloc]init];
if(_iCameFromItems==1)
{
NSMutableArray *arr=[acc selectItemStatus:_someID];
kmStatus *kStatus=[arr objectAtIndex:0];
_currentGrade=kStatus.grade;
// _currentGrade is that instance var
}
}