как заменить предыдущие данные новыми данными в массивах - PullRequest
0 голосов
/ 16 февраля 2011

Я получаю некоторую информацию с веб-сервера .net и сохраняю ее в NSuserdefaults.

для этого мой код

[[NSUserDefaults standardUserDefaults] setObject:resultData_agent forKey:@"agentid"];
    [[NSUserDefaults standardUserDefaults] setObject:array1 forKey:@"loanoff_id"];
    [[NSUserDefaults standardUserDefaults] setObject:array2 forKey:@"agentnames"];
    [[NSUserDefaults standardUserDefaults] setObject:array3 forKey:@"agentemail"];
    [[NSUserDefaults standardUserDefaults] setObject:array4 forKey:@"agentphone"];

чтобы получить их, я использую следующий код

agentids = [[NSUserDefaults standardUserDefaults] arrayForKey:@"agentid"];
    loanofficerid = [[NSUserDefaults standardUserDefaults] arrayForKey:@"loanoff_id"];
    agentnames = [[NSUserDefaults standardUserDefaults] arrayForKey:@"agentnames"];
    agentemails = [[NSUserDefaults standardUserDefaults] arrayForKey:@"agentemail"];
    agentphone = [[NSUserDefaults standardUserDefaults] arrayForKey:@"agentphone"];

вот эти 5 массивов.

Мне нужно повторять этот процесс каждые 5 минут.

здесь я получил проблему, данные не заменяются в массивах, которые они добавили к существующим данным.

например: изначально в agetids у меня есть 101, когда я повторяю этот процесс, он показывает 101,101

но мне нужно заменить эти значения на существующие.

я пытаюсь использовать массив NSMutable, но он показывает предупреждение на agentids = [[NSUserDefaults standardUserDefaults] arrayForKey:@"agentid"];

как я могу сделать, может кто-нибудь, пожалуйста, помогите мне.

Заранее спасибо.

1 Ответ

4 голосов
/ 16 февраля 2011

Я думаю, что вы получаете NSArray от NSUserDefault, поэтому у вас появляется предупреждение.

используйте это,

agentids = [[[NSUserDefaults standardUserDefaults] arrayForKey:@"agentid"] mutableCopy];

и перед вставкой новых данных вам нужно удалить предыдущие объекты из этого.useremoveAllObjects метод для этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...