我想在 flutter 中设置 Textspan 的圆角,我认为需要类 Paint,但我不知道该怎么做。

import 'package:flutter/material.dart';

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

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: new AppBar(),
        body: new RichText(
          text: new TextSpan(
            text: null,
            style: TextStyle(fontSize: 20.0, color: Colors.black),
            children: <TextSpan>[
              new TextSpan(
                text: 'inactive ',),
              new TextSpan(
                  text: 'active',
                  style: new TextStyle(
                    color: Colors.white,
                    background: Paint()
                      ..color = Colors.redAccent,
                  )),
            ],
          ),
        ),
      ),
    );
  }
}

有没有办法使用 Textspan 来实现这一点,而不是使用 Container 包装 Text

最佳答案

不使用 Container 或其他东西 - 我只能看到一种使角变圆的方法

TextSpan(
    text: 'active',
    style: TextStyle(
        fontSize: 20.0,
        color: Colors.white,
        background: Paint()
          ..strokeWidth = 24.0
          ..color = Colors.red
          ..style = PaintingStyle.stroke
          ..strokeJoin = StrokeJoin.round))

但在这种情况下,文本周围有填充,所以我怀疑这是正确的方法

关于android - 如何在 Flutter 中设置 TextSpan 的圆角,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54020924/

10-09 05:29