2010-10-24 3 views
0

Я хочу, чтобы пользовательское меню загрузки состояло из серии неподвижных изображений, которые трижды повторяются, а затем показывают изображение. В настоящее время картина видна с самого начала. Я хочу использовать isAnimating, чтобы узнать, когда анимация загрузки остановлена, либо либо сменить myImage.hidden, либо иметь UIImageView, изначально содержащий белое изображение, а затем заменяемое изображением, когда isAnimating возвращает NO.Как использовать isAnimating в приложении для iPhone

сайт компании Apple просто говорит

- (BOOL)isAnimating 

и что она возвращает логическое ДА или НЕТ.

но как вы это используете?

Мне нужно, чтобы что-то происходило в зависимости от того, что-то оживляет или нет, поэтому я делаю результат, который возвращает в переменной, и проверяет, что в условном выражении if?

положил его в утверждение if? или это заявление?

или это нравится:

- (BOOL)isAnimating{ 
    //stuff to do if it is 
} 

или я просто получить всю концепцию совершенно неправильно?

+0

Этот вопрос кажется, что отсутствует вводный параграф. Возможно, вы можете перефразировать его, чтобы точно указать (A), какова ваша проблема, (B), что вы уже пробовали, (C), как это не сработало. Возможно, вы говорите о методе 'isAnimating' в' UIActivityIndicatorView' или 'UIImageView'? –

+0

Ты прав, я бросился. Я говорю о UIImageView. – espekia

ответ

1

Я думаю, метод isAnimating просто говорит вам, действительно ли UIViewImage выполняет анимацию.
Поскольку вы просто хотите создать небольшую загрузку перед отображением своего изображения, почему бы вам просто не использовать таймер? Вы можете сделать что-то вроде этого

- (void)startAnimation { 
    yourImageView.hidden = YES; // Keep you image hidden while loading 
    [yourLoadingAnimation startAnimating]; // Start you loading animation 
    NSInteger timeout = 2; // Duration in seconds of your loading animation 
    [NSTimer scheduledTimerWithTimeInterval:timeout target:self selector:@selector(stopAnimation) userInfo:nil repeats:NO]; // Set the timer 
} 

- (void)stopAnimation { 
    [yourLoadingAnimation stopAnimating]; // Stop your loading animation 
    yourLoadingAnimation.hidden = YES; // Hide your laading animation 
    yourImageView.hidden = NO; // Display your image 
} 
+0

Я не мог заставить его работать, но это похоже на хороший подход, так что спасибо. – espekia

+0

- эти методы, что мне нужно позвонить в другое место, чтобы они могли что-то сделать? если да, то как? Я слышал, что это должно быть как [метод объекта]; но они применимы к нескольким объектам, так как я их реализую? – espekia

+0

Что это значит? Вы должны реализовать 2 объекта (yourLoadingAnimation и yourImageView) – pasine

Смежные вопросы