如何使用颤动随机将骰子滚动动画更长的时间

时间:2019-08-17 11:16:54

标签: flutter dart

我正在尝试为骰子滚动动画制作动画,但是它不会滚动更长的时间。如果我单击以掷骰子,则只掷一次并显示结果。

我尝试添加循环,但是没有用。

import 'dart:math';
import 'package:flutter/material.dart';

void main() {
  return runApp(
    MaterialApp(
      home: Scaffold(
        backgroundColor: Colors.red,
        appBar: AppBar(
          title: Center(
            child: Text('dice'),
          ),
          backgroundColor: Colors.red,
        ),
        body: DicePage(),
      ),
    ),
  );
}

class DicePage extends StatefulWidget {
  @override
  _DicePageState createState() => _DicePageState();
}

class _DicePageState extends State<DicePage> {
  int leftDiceNumber = 1;
  int rightDiceNumber = 1;

  void diceRandom() {
    setState(() {
      rightDiceNumber = Random().nextInt(6) + 1;
      leftDiceNumber = Random().nextInt(6) + 1;
    });
  }

  @override
  Widget build(BuildContext context) {
    return Column(
      children: <Widget>[
        Center(
          child: Row(
            children: <Widget>[
              Expanded(
                child: Image.asset('images/dice$leftDiceNumber.png'),
              ),
              Expanded(
                child: Image.asset('images/dice$rightDiceNumber.png'),
              ),
            ],
          ),
        ),
        Container(
          child: FlatButton(
              onPressed: () {
                diceRandom();
              },
              child: Text("button")),
        )
      ],
    );
  }
}

我如何获得掷骰子动画,比如说掷骰子5秒钟,然后显示结果。

0 个答案:

没有答案