Проблемы с отображением анимации flare_flutter - PullRequest
0 голосов
/ 23 апреля 2020

Проблема в том, что анимация не может быть отображена, но может быть показано только изображение. Здесь есть только часть кода о BottomAnimeLoader. Поэтому, пожалуйста, помогите мне понять, что происходит, почему только изображение stati c здесь. (с использованием флаттера и языка дротиков)

анимация: c

import 'package:flare_flutter/flare_actor.dart';
import 'package:flutter/material.dart';

class BottomAnimeLoader extends StatefulWidget {
  @override
  _BottomAnimeLoaderState createState() => _BottomAnimeLoaderState();
}

class _BottomAnimeLoaderState extends State<BottomAnimeLoader> {
  String _animationName = "new";
  @override
  Widget build(BuildContext context) {
    return Center(
      child: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        mainAxisSize: MainAxisSize.min,
        children: [
          Expanded(
              child: FlareActor(
            "assets/flr/success.flr",
            fit: BoxFit.contain,
            alignment: Alignment.center,
            animation: _animationName,
          ))
        ],
      ),
    );
  }
}

1 Ответ

0 голосов
/ 23 апреля 2020

Я использую файл flr официального примера для имитации этого случая, потому что у меня нет вашего файла flr
Если у вас неправильное имя _animationName, тогда оно станет stati c image
В официальном примере _animationName - это idle, если я изменю его на new, оно станет стати c image
Пожалуйста, исправьте _animationName, например, следующее https://rive.app/a/pollux/files/flare/success-check _animationName is Untitled

enter image description here

рабочая демоверсия

enter image description here

полный тестовый код

import 'package:flutter/material.dart';
import 'package:flare_flutter/flare_actor.dart';

class BottomAnimeLoader extends StatefulWidget {
  @override
  _BottomAnimeLoaderState createState() => _BottomAnimeLoaderState();
}

class _BottomAnimeLoaderState extends State<BottomAnimeLoader> {
  String _animationName = "success";
  @override
  Widget build(BuildContext context) {
    return Center(
      child: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        mainAxisSize: MainAxisSize.min,
        children: [
          Expanded(
              child: FlareActor(
            "assets/flr/success.flr",
            fit: BoxFit.contain,
            alignment: Alignment.center,
            animation: _animationName,
          ))
        ],
      ),
    );
  }
}

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
        visualDensity: VisualDensity.adaptivePlatformDensity,
      ),
      home: BottomAnimeLoader(),
    );
  }
}
...