Как показать некоторую обработку во время выполнения фоновой задачи? - PullRequest
1 голос
/ 28 ноября 2010

Я создаю приложение для iPhone, в котором мне нужно, чтобы пользователи вводили свой идентификатор электронной почты и пароль, а затем они могли получить доступ к своей учетной записи на моем веб-сайте.

Как только они вводят данные для аутентификации, они должны подождать несколькосекунд до появления следующей страницы.

Мне нужно показать пользователю символ «Обработка» или «Пожалуйста, подождите».

Как мне это реализовать?

Помогите, пожалуйста.

Ответы [ 4 ]

2 голосов
/ 28 ноября 2010

То, что вы ищете, является индикатором активности.

Вот учебник для индикатора активности.

http://www.edumobile.org/iphone/iphone-programming-tutorials/use-activityindicator-in-iphone/

Надеюсь, это поможет вам

1 голос
/ 28 ноября 2010

Я обычно создаю UIView, который создается по мере необходимости.Вот код, который вы можете попробовать в своем собственном приложении:

- (id)initWithLabel:(NSString*)labelName {
    self = [super init];
    if (self) {
        UIImageView *loadingBackgroundView = [[UIImageView alloc] initWithFrame:CGRectMake(100, 150, 120, 40)];
        [loadingBackgroundView setBackgroundColor:[UIColor blackColor]];
        [loadingBackgroundView setAlpha:0.9];
        [loadingBackgroundView.layer setCornerRadius:8.0];
        [loadingBackgroundView.layer setBorderColor:[[UIColor clearColor] CGColor]];
        [self addSubview:loadingBackgroundView];
        [loadingBackgroundView release];

        UILabel *loadingLabel = [[UILabel alloc] initWithFrame:CGRectMake (125, 160, 100, 20)];
        [loadingLabel setBackgroundColor:[UIColor clearColor]];
        [loadingLabel setTextAlignment:UITextAlignmentCenter];
        [loadingLabel setTextColor:[UIColor whiteColor]];
        [loadingLabel setText:labelName];
        [self addSubview:loadingLabel];
        [loadingLabel release];

        UIActivityIndicatorView *loadingActivityIndicatorView = [[UIActivityIndicatorView alloc] initWithFrame:CGRectMake(110,160,20,20)];
        [loadingActivityIndicatorView setActivityIndicatorViewStyle:UIActivityIndicatorViewStyleWhiteLarge];
        [loadingActivityIndicatorView startAnimating];
        [self addSubview:loadingActivityIndicatorView];     
        [loadingActivityIndicatorView release];
    }
    return self;
}

Это даст вам нечто похожее на приведенное ниже: alt text

0 голосов
/ 28 ноября 2010

Это то, что было обработано многими людьми, поэтому, если вы хотите воспользоваться чужой работой и не изобретать велосипед, вы можете использовать что-то вроде Tapku Library .Он с открытым исходным кодом и на GitHub.

В частности, обратите внимание на классы TKProgressAlertView и TKLoadingView.

0 голосов
/ 28 ноября 2010

Как заметил ParthBhatt, вам нужен индикатор активности.

Мне очень нравится класс DSActivityView Дэвида Синклера: он чрезвычайно прост в реализации, легко отображать и изменять сообщения, его можно использовать для отключения пользовательского интерфейса, покрывая его, включая панель вкладок и панель навигации, если это необходимо.1003 *

http://www.dejal.com/developer/dsactivityview

...