微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Flutter Loading Widget 类颜色

如何解决Flutter Loading Widget 类颜色

我再次回到这里,因为我是使用颤振的新编码,我在实验中学习。 我想要做的是制作一个全局加载小部件,可以调用它以显示具有指定颜色的加载小部件,并且想知道是否有人可以帮助我完成此操作。

例如...

我更喜欢如何调用加载小部件:

LoadingWidget(Orange);

global_widgets.dart

import 'package:Flutter/material.dart';
import 'package:myapp/res/colors.dart';

class LoadingWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return CircularProgressIndicator(
      valueColor: AlwaysstoppedAnimation<Color>(
        // Replace following with specified Color like,CustomColors.'specifield_color'??
        // CustomColors.[replace with specified color]
        CustomColors.Orange,),);
  }
}

class AppBarTitle extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Row(
      crossAxisAlignment: CrossAxisAlignment.start,mainAxisSize: MainAxisSize.min,children: [
        Image.asset(
          'assets/logo.png',height: 20,SizedBox(width: 8),Text(
          'My',style: TextStyle(
            color: CustomColors.Navy,fontSize: 18,Text(
          'App',style: TextStyle(
            color: CustomColors.Orange,],);
  }
}

colors.dart

import 'package:Flutter/material.dart';

class CustomColors {
  static final Color Navy = Color(0xFF2C384A);
  static final Color Orange = Color(0xFFF57C00);
}

解决方法

customColor 类型的变量 Color 添加到 LoadingWidget

class LoadingWidget extends StatelessWidget {

  final Color customColor;
  LoadingWidget(this.customColor);

  @override
  Widget build(BuildContext context) {
    return CircularProgressIndicator(
      valueColor: AlwaysStoppedAnimation<Color>(
        customColor,// <--- // your specified color
      ),);
  }
}

现在您可以像这样调用小部件:LoadingWidget(CustomColors.Orange)

gist 包含工作代码,如果需要,您可以在 DartPad 上运行它。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。