Я собираюсь быстро перейти к преследованию здесь, я использую API MailCore для подключения к электронной почте и загрузки сообщений в массив, затем беру эти сообщения в массиве и отображаю их в виде таблицы.Отображение всех объектов из массива?
Вот код (получен с официального сайта MailCore), который будет загружать все сообщения с сервера:
messageSet = [inbox messagesFromUID:1 to:0 withFetchAttributes:CTFetchAttrEnvelope];
В основном, это будет загружать все сообщения с сервера, и я могу подтвердить это, сообщая содержимое массива с помощью NSLog, все сообщения есть.
Вот теперь код, который будет принимать только первое сообщение (индекс 0) и добавить, что мои сообщения массива:
CTCoreMessage *msg = [messageSet objectAtIndex:0];
BOOL isHTML;
isHTML = YES;
messages = [[NSMutableArray alloc] init];
sendernames = [[NSMutableArray alloc] init];
[messages addObject:[msg bodyPreferringPlainText:&isHTML]];
NSString *sender = [NSString stringWithFormat:@"%@", [msg sender]];
[sendernames addObject:sender];
[tableView reloadData];
Итак, еще раз, это принимает сообщение с индексом 0, который является первым сообщение и добавляет его в массив сообщений. У меня также есть код, который получает имя отправителя и добавляет его в массив отправителя, игнорируя это.
Вот код в моем методе cellForRowAtIndexPath (только вырезка из значений я устанавливающие для моих элементов на ячейке):
cell.nameText.text = [sendernames objectAtIndex:0];
cell.messageText.text = [messages objectAtIndex:0];
Как вы можете видеть, он отображает объект индекс 0, то первое сообщение, то же самое, что мы добавили ранее.
Наконец, вот код, который устанавливает, сколько строк у меня есть. Он основан на массиве messagesSet, который загружает ВСЕ сообщения.
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [messageSet count];
}
Мой вопрос, как я могу изменить мой код, чтобы сделать две вещи:
1.) Добавить все скачанные объекты в массив, а не только первый. 2.) Измените код cellForRowAtIndexPath, чтобы отобразить все объекты в массиве сообщений.
Большое спасибо!
Большое вам спасибо! Это сработало! Я попрошу вас с вами больше вопросов MailCore, хорошо?:-) – ranjha
Вы уверены, что можете, но я не могу обещать своевременные ответы, я только продолжаю, когда мне абсолютно нечего делать. –
Ха-ха! Спасибо, я буду помнить об этом! – ranjha