Программирование NSTimer для изменения образа iPhone

#iphone #ios #nstimer

#iPhone #iOS #nstimer

Вопрос:

Как периодически менять изображения с помощью NSTimer в программировании iPhone?

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

Я хочу отображать изображения в imageview и периодически менять изображения с помощью NSTimer.

Ответ №1:

Вместо использования NSTimer я бы просто использовал множество пользовательских изображений и анимировал их. Смотрите документацию отсюда.

Комментарии:

1. Результатом этого метода является более плавная анимация со многими большими изображениями.

2. Как бы я мог добавлять и удалять изображения, используя это? Сделайте временные интервалы немного длиннее, но также какой метод вызывает изменение fadeinandout / alpha в uiimageview?

Ответ №2:

импортируйте понравившиеся изображения в приложение bundle, назвав их image1.png, image2.png, image3.png и так далее….

Добавьте UIImageView в interface builder, назовите его (ссылка) «theImage»

в файле H:

 @interface delme3ViewController : UIViewController {

    UIImageView *theImage;
    int imageCount;
}
@property (nonatomic, retain) IBOutlet UIImageView *theImage;

@end
  

в файле M:

 - (void)viewDidLoad
{
    [super viewDidLoad];
    [NSTimer scheduledTimerWithTimeInterval:1 
                                     target:self 
                                   selector:@selector(animateFunction) 
                                   userInfo:nil 
                                    repeats:YES];
    imageCount = 1;

}

-(void)animateFunction
{
    NSLog(@"Timer heartbeat %i",imageCount);
    imageCount = imageCount   1;
    NSString *imageName = [NSString stringWithFormat:@"image%i.png"];
    [theImage setImage:[UIImage imageNamed:imageName]];
}
  

Ответ №3:

вы также можете использовать массив имен изображений вместо переименования изображений в вашем пакете. 🙂

Комментарии:

1. Или можно использовать массив объектов UIImage. (Хотя из-за способа, которым система кэширует изображения, это обычно не дает никаких преимуществ.)