Facebook iPhone SDK: показывать индикатор выполнения при загрузке изображения - PullRequest
3 голосов
/ 26 апреля 2010

Я хочу показать индикатор выполнения, пока приложение для iPhone загружает изображение в Facebook. Возможно ли это?

Могу ли я сделать это с каждым выполненным FBRequest? Я также использую FBRequest для проверки расширенных разрешений и иногда занимает много времени.

Спасибо.

Ответы [ 2 ]

6 голосов
/ 02 августа 2011

Для индикатора выполнения есть небольшой взлом, который вы можете сделать. В файле FBRequest.h добавьте эту строку в протокол FBRequestDelegate:

- (void)request:(FBRequest *)request didSendBodyData:(NSInteger)bytesWritten totalBytesWritten:(NSInteger)totalBytesWritten totalBytesExpectedToWrite:(NSInteger)totalBytesExpectedToWrite;

После этого в файл FBRequest.m добавьте эту функцию:

- (void)connection:(NSURLConnection *)connection didSendBodyData:(NSInteger)bytesWritten totalBytesWritten:(NSInteger)totalBytesWritten totalBytesExpectedToWrite:(NSInteger)totalBytesExpectedToWrite {
    if ([_delegate respondsToSelector:@selector(request:didSendBodyData:totalBytesWritten:totalBytesExpectedToWrite:)]) {
        [_delegate request:self didSendBodyData:bytesWritten totalBytesWritten:totalBytesWritten totalBytesExpectedToWrite:totalBytesExpectedToWrite];
    }
}

Теперь ваш делегат будет получать сообщение каждый раз, когда на сервер будет отправлено больше данных. В общем, если вы внедрите это в свой делегат, вы должны увидеть некоторую активность в вашем журнале:

- (void)request:(FBRequest *)request didSendBodyData:(NSInteger)bytesWritten totalBytesWritten:(NSInteger)totalBytesWritten totalBytesExpectedToWrite:(NSInteger)totalBytesExpectedToWrite
{
    NSLog(@"%d bytes out of %d sent.", totalBytesWritten, totalBytesExpectedToWrite);
}

Дайте мне знать, если у вас есть какие-либо проблемы со взломом этого в текущем SDK Facebook.

0 голосов
/ 21 июня 2010

Вы не можете знать, когда он войдет в систему, но вы можете добавить UIActivityIndicatorView.Вы запускаете его, когда нажимаете кнопку публикации, и заканчиваете его, когда вводите метод didConnect

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