flutter 中所有背景页面采用单一颜色

问题描述 投票:0回答:2

是否有一个选项可以为 flutter 中每个页面的背景提供单一颜色。我在 flutter 中找不到一个。

flutter
2个回答
3
投票

MaterialApp
有一个
theme
属性,您可以使用以下方法调整
ScaffoldBackgroundColor

MaterialApp(
      theme: ThemeData(
        scaffoldBackgroundColor: Colors.white, //your preferred color
      ),
    );

1
投票

是的,您可以使用

ThemeData
类定义应用程序的整体主题,轻松为 Flutter 应用程序中的所有页面设置单一背景颜色。具体来说,您可以在
scaffoldBackgroundColor
中设置
ThemeData
属性,这会将背景颜色应用于整个应用程序中的所有 Scaffold 小部件。

  1. 在 MaterialApp 中定义主题:您可以在

    MaterialApp
    小部件的根级别定义主题。

  2. 设置

    scaffoldBackgroundColor
    :此属性允许您设置将应用于使用脚手架的每个页面的背景颜色。

import 'package:flutter/material.dart';

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

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Single Color Background',
      theme: ThemeData(
        scaffoldBackgroundColor: Colors.lightBlue[50], // Set your desired background color here
        primarySwatch: Colors.blue,
      ),
      home: HomeScreen(),
    );
  }
}

class HomeScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Home Screen'),
      ),
      body: Center(
        child: Text('This is the Home Screen!'),
      ),
    );
  }
}

class SecondScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Second Screen'),
      ),
      body: Center(
        child: Text('This is the Second Screen!'),
      ),
    );
  }
}
© www.soinside.com 2019 - 2024. All rights reserved.