При загрузке файла HTML показывать статический текст и точки запуска (Загрузка. .. ...) - PullRequest
1 голос
/ 28 марта 2012

В своем приложении я загружаю файл HTML с сервера и проверяю, есть ли изображение в данный момент на сайте, и устанавливаю статус для метки, когда изображение было найдено. Все отлично работает, но мне нравится покажите пользователю метку состояния Загрузка, пока приложение загружает файл. Он работает со статическим текстом, но как я могу показать точки бега после загрузки текста? Мне нравится видеть: Загрузка> Загрузка. > Загрузка ..> Загрузка ...> Загрузка> и так далее (мне не нужен точный индикатор выполнения)

Код:

- (void)viewDidLoad
{
    [super viewDidLoad];
    platzStatusLabel.text = @"Loading";
    if (myConnection == nil) {
        myData = [NSMutableData new];
        NSString *urlString = [NSString stringWithFormat:@"http://www.myURL.com"];
        myConnection =[NSURLConnection connectionWithRequest:
                       [NSURLRequest requestWithURL:
                        [NSURL URLWithString:urlString]] 
                                                    delegate:self];
    }

}



- (void)connectionDidFinishLoading:(NSURLConnection *)connection {

    NSString *stringToLookup = [[NSString alloc]initWithData:myData encoding:NSASCIIStringEncoding];

    if ([stringToLookup rangeOfString:@"image_green"].location != NSNotFound){
        platzStatusLabel.text = @"Course is open.";
    } else {
        platzStatusLabel.text = @"Course is closed.";
    }

    [self initializeVariablesAgain];
}




- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {

    [myData appendData:data];
}




- (void) initializeVariablesAgain {
    myData = nil;
    myConnection = nil; 
}

Ответы [ 2 ]

1 голос
/ 28 марта 2012

Почему бы не запустить UIActivityIndicator (эта круговая вещь, которая выделяет) при создании запроса и остановить его в didFinishLoading? Или запустите и остановите NSTimer, который выполняет итерацию нескольких строк одинаково. Наконец, вы можете перебирать ваши разные строки в didReceiveData. Приветствия

0 голосов
/ 28 марта 2012

Обновите свой счетчик (размер загруженных обновлений) в

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data;

например.

[myData appendData:data];
self.myCountInBytesOfDownloadProgress = [myData length];
...