gData Youtube Feed - PullRequest
       3

gData Youtube Feed

1 голос
/ 28 февраля 2011

Я создал приложение для загрузки в канал YouTube и отображения его в UITableView.

Я также добавил возможность щелкать по ячейке «Загрузить еще», которая появляется в конце таблицы, которая предназначена для использования каналов nextLink, и загружать еще 10 видео, которые должны заполнить конец таблицы.

Проблема, однако, в том, что таблица полностью заменена новыми 10 элементами, а не добавляется к тому, что уже отображается.

Код, который я использую, выглядит следующим образом:

NSLog(@"%@", [[feed nextLink] href]);
NSURL *feedURL; 
feedURL = [NSURL URLWithString: [[feed nextLink] href]]; 

GDataServiceGoogleYouTube *service = [self youTubeService];
ticket = [service fetchFeedWithURL:feedURL delegate:self     
didFinishSelector:@selector(request:finishedWithFeed:error:)];

И приведенный ниже метод:

- (void)request:(GDataServiceTicket *)ticket
finishedWithFeed:(GDataFeedBase *)aFeed
error:(NSError *)error {

self.feed =  (GDataFeedYouTubeVideo *)aFeed;


[superTable reloadData];
}

Кто-нибудь знает лучший способ или я могу объединить содержимое существующего канала с новым, который я получаю? то есть .... Если при загрузке приложения оно получает видео 1 - 10, нужно ли мне повторно выбирать 1-20 или я могу просто получить 11-20 и добавить их в источник данных таблиц?

Приветствия

1 Ответ

1 голос
/ 01 марта 2011

Вы можете перемещать записи одного канала в другой, если вы удалите их родительский указатель на исходный канал, например

NSArray *newEntries = [newFeed entries];

for (GDataEntryBase *entry in newEntries) {
  [entry setParent:nil];
  [previousFeed addEntry:entry];
}

Если вы извлекаете записи с сервера по индексу, нетгарантируйте, что записи во втором фиде не были также в первом фиде, если порядок фидов изменился между выборками.

Если фид не большой, вы можете извлечь все его страницы одновременно, вызвав setServiceShouldFollowNextLinks:на объекте обслуживания.

...