top of page

Feuerwerk Animation in Flutter

  • Autorenbild: Flutter Akademie
    Flutter Akademie
  • 21. Okt. 2022
  • 2 Min. Lesezeit


ree

Alles ist besser mit einem Feuerwerk!


Wolltest du schon immer mal ein Feuerwerk in Flutter programmieren? In diesem Flutter Tutorial zeige ich dir wie du eine Feuerwerk Animation in deine Flutter App einfügen kannst.


Wie erstelle ich eine Animation, wie das Feuerwerk?


Ich habe dazu die Website rive.app verwendet. Mit dieser Website kann man wirklich alles animieren, wenn man die Zeit und Geduld hat. Hier sieht man das Feuerwerk, das ich für die App benutzt habe.

ree


Die Basic App


Nun kommen wir dazu die App zu programmieren. Als erstes habe ich das “Basic Gerüst” der App programmiert. Dabei habe ich den Hintergrund schwarz gefärbt, damit man dann das Feuerwerk besser sehen kann.



import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
 @override
 Widget build(BuildContext context) {
   return MaterialApp(
     title: 'Firework',
     home: Scaffold(
       backgroundColor: Colors.black,
       appBar: AppBar(
         backgroundColor: Colors.black,
         title: Text('Firework'),
       ),
     ),
   );
 }
}


Wie exportiere ich das Feuerwerk?


Um das Feuerwerk von der rive.app in die App einzufügen, musste ich erst die Animation von der rive.app exportieren. Das mache ich über den Export Button:

ree

Hier habe ich die Binarys exportiert.

ree

Wo füge ich die Datei ein?


In meinem Flutter Projekt erstelle ich erstmal einen assets Ordner und dort erstelle ich den Ordner animation. In den animation Ordner lege ich dann die ganzen, wie der Name schon sagt, Animationen rein.


Als nächstes habe ich die ganzen Feuerwerke in der pubspec.yaml Datei hinzugefügt und das sieht dann so aus:


ree


Wie programmiere ich jetzt das Feuerwerk?


Das ist eine sehr gute Frage, die ich dir jetzt beantworten werde. Als erstes habe ich mir ein Package geholt. Es heißt flare_flutter und ist von der rive.app und dient dazu die Animation zu starten. Das Package habe ich der pubspec.yaml Datei hinzugefügt.


ree

Nun habe ich den Code programmiert. Der Code setzt natürlich vorraus, dass die animations im assets Ordner genau so heißen wie in meinem Beispiel, wenn du es kopieren möchtest ; )



class Firework extends StatelessWidget {
 Widget build(BuildContext context) {
   return GestureDetector(
       child: Stack(children: <Widget>[
     Positioned(
         top: 100,
         left: 10,
         height: 200,
         width: 500,
         child: Container(
             child: FlareActor(
           "assets/animation/firework_red.flr",
           animation: "explode",
         ))),
     Positioned(
         top: 500,
         left: 10,
         height: 150,
         width: 200,
         child: Container(
             child: FlareActor(
           "assets/animation/firework_blue.flr",
           animation: "explode",
         ))),
   ]));
 }
 static void startFlare(FlareActor flare) {}
}

Du kannst diesen Code unendlich weiterführen, um ein Feuerwerk zu erstellen. Aber du solltest die Positionen vom Feuerwerk immer ändern, sonst überlappt sich alles. Ich habe in meinem Code noch weitere Feuerwerke hinzugefügt:



Positioned(
         top: 100,
         left: 10,
         height: 200,
         width: 500,
         child: Container(
             child: FlareActor(
           "assets/animation/firework_red.flr",
           animation: "explode",
         ))),

Und wie sieht das Feuerwerk am Schluss aus?

ree

 
 
 

Aktuelle Beiträge

Alle ansehen
Numerische Eingabefelder in Flutter

Wenn du eine Flutter-App entwickelst, wirst du oft Eingabefelder (TextFormFields) benötigen, die nur numerische Eingaben erlauben. Ob für...

 
 
 

Kommentare

Mit 0 von 5 Sternen bewertet.
Noch keine Ratings

Rating hinzufügen
bottom of page