flutter - 如何将函数放入文本小部件中

标签 flutter dart

如何使用这个方法

    void fontControl() {
    setState(() {
      TextStyle(fontSize: 10 + count.toDouble());

      if (count == 100) {
        const TextStyle(fontSize: 100);
      }
    });
  }

到文本小部件

Text(count.toString(), style: fontControl())

最佳答案

您可以使用方法来提供样式。为此,您需要返回 TextStyle,因此它不能为空。另外,您可以选择 textStyle 变量。

您可以使其成为动态的或更好的可空返回类型。并在按钮单击时使用 SetState

import 'package:flutter/material.dart';

class TestS extends StatefulWidget {
  final String? name;
  const TestS({
    Key? key,
    this.name,
  }) : super(key: key);

  @override
  State<TestS> createState() => _TestSState();
}

class _TestSState extends State<TestS> {
  int count = 0;

  TextStyle? fontControl() {
    if (count == 1) {
      return TextStyle(fontSize: 100);
    }
    return TextStyle(fontSize: 10 + count.toDouble()); //default
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      floatingActionButton: FloatingActionButton(onPressed: () {
        count++;
        setState(() {});
      }),
      body: Text(
        widget.name ?? "default value",
        style: fontControl(),
      ),
    );
  }
}

关于flutter - 如何将函数放入文本小部件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73005189/

相关文章:

unit-testing - Dart,如何使用区域进行单元测试?

flutter - 如何从 Flutter 中的路由中删除第一个屏幕?

android - 将 FlutterFragment 添加到 Activity?

dart - 保持浏览器 URL 与应用程序状态同步

firebase - 我如何上传多张图片到 flutter 中的 firebase 并获取它们的所有下载 url

flutter - 如何设置特定的日期范围选择器

dart - 无法在列中居中文本小部件

dart - 没有镜像包的flutter中如何使用ByteData和ByteBuffer

Android Studio,如何查看 "tips(quick documentation)"?

dart - 如何在angularDart项目中使用轮廓 Material 图标?