Эффект фейерверка iOS CAEmitterCell

Я хочу создать эффект, как фейерверк. Я знаю, что могу использовать для него CAEmitterCell. Я попытался загрузить несколько примеров, но я все еще продолжаю эту функцию в iOS 5.0

Кто-нибудь знает хороший учебник, как создать эффект фейерверка с помощью CAEmitterCell?

Мне нужно создать что-то вроде ниже:

введите описание изображения здесь

Все частицы идут от центра (красный круг) в направлении к зеленым кругам. Красный круг – это начальная точка, которая будет иметь некоторое значение CGPoint.

Я нашел это решение:

это выглядит так, как выглядит файл DWFParticleView.h

#import <UIKit/UIKit.h> @interface DWFParticleView : UIView @property (nonatomic) CGFloat time; -(void)configurateEmmiter; -(void)setEmitterPositionFromTouch: (UITouch*)t; -(void)setIsEmitting:(BOOL)isEmitting andPoint:(CGPoint)point; @end 

так выглядит DWFParticleView.m

 #import "DWFParticleView.h" #import <QuartzCore/QuartzCore.h> @implementation DWFParticleView { CAEmitterLayer* fireEmitter; //1 } -(void)configurateEmmiter { //set ref to the layer fireEmitter = (CAEmitterLayer*)self.layer; //2 //configure the emitter layer fireEmitter.emitterPosition = CGPointMake(50, 50); fireEmitter.emitterSize = CGSizeMake(5, 5); CAEmitterCell* fire = [CAEmitterCell emitterCell]; fire.birthRate = 0; fire.lifetime = 2.0; fire.lifetimeRange = 0.5; //fire.color = [[UIColor colorWithRed:0.8 green:0.4 blue:0.2 alpha:0.6] CGColor]; fire.contents = (id)[[UIImage imageNamed:@"star_icon.png"] CGImage]; [fire setName:@"fire"]; fire.velocity = 80; fire.velocityRange = 20; fire.emissionRange = M_PI * 2.0f; fire.scaleSpeed = 0.1; fire.spin = 0.5; //add the cell to the layer and we're done fireEmitter.emitterCells = [NSArray arrayWithObject:fire]; fireEmitter.renderMode = kCAEmitterLayerAdditive; } + (Class) layerClass { return [CAEmitterLayer class]; } -(void)setEmitterPositionFromTouch: (UITouch*)t { //change the emitter's position fireEmitter.emitterPosition = [t locationInView:self]; } -(void)setIsEmitting:(BOOL)isEmitting andPoint:(CGPoint)point { fireEmitter.emitterPosition = point; //turn on/off the emitting of particles [fireEmitter setValue:[NSNumber numberWithInt:isEmitting?50:0] forKeyPath:@"emitterCells.fire.birthRate"]; [self performSelector:@selector(decayStep) withObject:nil afterDelay:self.time]; } - (void)decayStep { [fireEmitter setValue:[NSNumber numberWithInt:0] forKeyPath:@"emitterCells.fire.birthRate"]; } @end 

это метод одного нажатия на экран, например, который показывает наш эффект

 - (void)tap { DWFParticleView *fireView = [[DWFParticleView alloc] init]; fireView.time = 0.3; [fireView setUserInteractionEnabled:NO]; [fireView configurateEmmiter]; [fireView setFrame:CGRectMake(0, 0, 0, 0)]; [fireView setBackgroundColor:[UIColor redColor]]; [self.view addSubview:fireView]; } 

материал, который я нашел здесь: ray

  • аварийный отключение keyValue observer (с использованием примера кода Apple SquareCam)
  • Почему мой NSManagedObject не соответствует требованиям KVC?
  • Определить свободную память, доступную в JavaScript для веб-приложения iPhone?
  • xCode 4.2.3 не может компилироваться в iOS 5.1.1 (9B208) или iOS 5.1.1 (9B206)
  • Программно показать, как TTTableHeaderDragRefreshView вытащил сообщение об обновлении
  • iOS Возможно установить режим наложения на UILabel?
  • Создавайте и защищайте отсутствующую библиотеку с помощью Objective-C
  • UIButton не отвечает iOS5
  • Вытяните valueForKeys внутреннего NSMutableDictionary iOS
  • диаграммы 2 в графике
  • Как создать объект json с NSData в Objective C?
  • Interesting Posts

    Могу ли я загружать приложения iOS напрямую без джейлбрейковых устройств?

    Как вернуть значение из закрытия в Swift?

    Обновление Facebook SDK (iOS) теряет статус в системе

    Не удается добавить идентификатор команды в настройках проекта Firebase

    Удаление приложения с устройства iOS с помощью Push Notification

    «Использование необъявленного идентификатора», даже несмотря на импортированный файл Framework и заголовочный файл

    Показать два скрытых вида с последующим пальцем

    Как интерфейс командной строки Titanium для создания приложения iPhone для App Store

    Мой запрос reloaddata не вызывает методы делегата в UItableviewcontroller?

    Откуда появляется заголовок предупреждения в UIWebView

    Контекст сохранения CoreData, вызывающий сбои, когда приложение возвращается на передний план. стриж

    LocalStorage в приложении очищается при перезагрузке в iOS8

    Назначение константы в инициализаторе Swift

    UITableView пользовательская ячейка – Как сохранить cornerRadius в режиме редактирования

    Как рассчитать высоту содержимого веб-представления в iOS?

    Давайте будем гением компьютера.