Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 颤振-使用提供程序+;变更通知程序_Flutter_Colors_Themes_Provider - Fatal编程技术网

Flutter 颤振-使用提供程序+;变更通知程序

Flutter 颤振-使用提供程序+;变更通知程序,flutter,colors,themes,provider,Flutter,Colors,Themes,Provider,我按照YouTube上的教程将颤振材质应用程序从亮模式更改为暗模式(反之亦然),创建者使用了提供程序插件以及ChangeNotifier和notifyListeners() 然后,点击另一页上的按钮 import 'package:flutter/material.dart'; import 'package:gatorblocks_rbt/utils/themeChanger.dart'; import 'package:provider/provider.dart'; class Gene

我按照YouTube上的教程将颤振材质应用程序从亮模式更改为暗模式(反之亦然),创建者使用了提供程序插件以及ChangeNotifier和notifyListeners()

然后,点击另一页上的按钮

import 'package:flutter/material.dart';
import 'package:gatorblocks_rbt/utils/themeChanger.dart';
import 'package:provider/provider.dart';

class GeneralSettings extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    ThemeChanger _themeChanger = Provider.of<ThemeChanger>(context);

    return new Scaffold(
      appBar: AppBar(
        title: Text('General'),
      ),
      body: ListView(
        children: <Widget>[
          Card(
            child: ListTile(
              leading: Icon(Icons.brightness_3, size: 50.0),
              title: Text("Dark Mode"),
              subtitle: Text("Change the app to a dark mode theme!"),
              onTap: () {
                _themeChanger.setTheme(ThemeData.dark());
              },
            )
          ),
          Card(
            child: ListTile(
              leading: Icon(Icons.brightness_5, size: 50.0),
              title: Text("Light Mode"),
              subtitle: Text("Change the app to a light mode theme!"),
              onTap: () {
                _themeChanger.setTheme(ThemeData.light());
              },
            )
          ),
        ],
      )
    );
  }
}
导入“包装:颤振/材料.省道”;
导入“包:gatorblocks_rbt/utils/themeChanger.dart”;
导入“包:provider/provider.dart”;
类GeneralSettings扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
ThemeChanger _ThemeChanger=Provider.of(上下文);
归还新脚手架(
appBar:appBar(
标题:正文(“概述”),
),
正文:ListView(
儿童:[
卡片(
孩子:ListTile(
前导:图标(Icons.brightness_3,大小:50.0),
标题:文本(“暗模式”),
字幕:文本(“将应用程序更改为暗模式主题!”),
onTap:(){
_setTheme(ThemeData.dark());
},
)
),
卡片(
孩子:ListTile(
前导:图标(Icons.brightness_5,大小:50.0),
标题:文本(“灯光模式”),
字幕:文本(“将应用程序更改为灯光模式主题!”),
onTap:(){
_setTheme(ThemeData.light());
},
)
),
],
)
);
}
}
有人知道如何将primarySwatch颜色从默认的蓝色更改为其他颜色吗

对不起,我是编程新手,不知道如何解释/知道怎么做。

在这行:

        _themeChanger.setTheme(ThemeData.light());
使用:

在这一行:

        _themeChanger.setTheme(ThemeData.light());
使用:


现在它正在从亮变暗,反之亦然?你现在想改变primarySwatch吗?如果是,那么对于光明主题还是黑暗主题?对于光明主题和黑暗主题。现在它正在从光明变为黑暗,反之亦然?你现在想改变primarySwatch吗?如果是,则适用于光明主题或黑暗主题?适用于光明主题和黑暗主题。
            _themeChanger.setTheme(ThemeData(brightness: Brightness.Light,primarySwatch: Colors.Red,);