私はこれを初期化しますNSMutableDictionary
:
define TAREFA @"TAREFA"
define DATA_ITEM @"DATA"
define HORA_ITEM @"HORAS"
define ID @"ID"
define STATE @"NA"
define APROVED @"APROVED"
define REJECTED @"REJECTED"
itensArray = [[NSMutableArray alloc] init];
for (int i=0; i< [listagens size]; i++)
{
NSMutableDictionary *tmpDictionary = [[NSMutableDictionary alloc] initWithObjectsAndKeys:
[[listagens item:i] WI_ID], ID,
[[listagens item:i] WI_TEXT], TAREFA,
[[listagens item:i] WI_CD], DATA_ITEM,
[[listagens item:i] WI_CT], HORA_ITEM,
STATE, STATE,
nil];
[itensArray addObject:tmpDictionary];
}
後で、私は次のことを行います:
for (int i=0; i<[itensArray count]; i++)
{
if ([[[itensArray objectAtIndex:i] objectForKey:ID] isEqualToString:cell.idLabel.text]) {
[[itensArray objectAtIndex:i] setString:APROVED forKey:STATE];
break;
}
}
配列を初期化し、後で NSMutableDictionary の文字列を変更します。値を設定すると、次のランタイム エラーが発生します。
'NSInvalidArgumentException'、理由: '-[__NSCFDictionary setString:forKey:]: 認識されないセレクターがインスタンス 0x7b7d170 に送信されました'
値を正しく変更していないようです。構文エラーですか?それはどのように行われますか?