我需要更改高架按钮的背景 colored颜色 ,单击以将其指示为选中.我已经试过这个了.

  class _MyState extends State<MyPage> {
  bool _flag = true;
    @override
      Widget build(BuildContext context) {
        return Scaffold(
          body: Center(
            child: ElevatedButton(
              onPressed: () => setState(() => _flag = !_flag),
              child: Text(_flag ? 'Red' : 'Green'),
              style: ElevatedButton.styleFrom(
                backgroundColor: _flag ? Colors.red : Colors.teal, 
              ),
            ),
          ),
        );
      }
    }

在onPressed()上: colored颜色 没有改变

推荐答案

在DartPad上,您的代码工作Link to dartpad%.
确保正确实现了有状态小部件:

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      debugShowCheckedModeBanner: false,
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {

  const MyHomePage({
    Key? key,
  }) : super(key: key);

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
   bool _flag = true;
    @override
      Widget build(BuildContext context) {
        return Scaffold(
          body: Center(
            child: ElevatedButton(
              onPressed: () => setState(() => _flag = !_flag),
              child: Text(_flag ? 'Red' : 'Green'),
              style: ElevatedButton.styleFrom(
                backgroundColor: _flag ? Colors.red : Colors.teal, 
              ),
            ),
          ),
        );
      }
}

Flutter相关问答推荐

Flutter -如何从布局填充(对称水平)中排除小部件?

Flutter—如何在Riverpod中使用全类状态?

底部导航栏项目在抖动中不更改 colored颜色

DART 3.3:为什么扩展类型不起作用?

Flutter 翼future 建造者不断开火和重建.它在每次重建时都会生成一个新的随机数--我如何防止这种情况?

如何从DART中的事件列表中获取即将到来的日期

如何在Flutter 中共享选定文本

在flutter web上渲染多个Youtube视频

如何修改来自合并 list 的 Android list 权限?

有没有办法在 google_map 上移动标记(向左或向右移动一些像素)?

Flutter Dismissible 不会在 startToEnd 滑动时被关闭

如何使Flutter 屏幕无法关闭?

升级到 Flutter 3.10 后,Flutter 键盘填充不起作用. Flutter 3.10 如何防止 BottomSheet 被键盘覆盖?

如何删除或隐藏覆盖

这是使用导航功能处理从一页到另一页的移动的最佳方式

如何格式化网址?

改变步进器的线条 colored颜色 Flutter

函数中的变量在 Dart 中应该有什么关键字?

将 onSaved(value) 从自定义 TextFormField 小部件传递给另一个?

设计响应式卡片的最佳方法,以避免像素溢出错误或 _AssertionError