Flutter实现一行文字多种颜色,部分文字设置点击事件

效果图:

Flutter实现一行文字多种颜色,部分文字设置点击事件_第1张图片

上面是效果图,请看有三种效果,第一行是删除效果,第二种是文字设置不同颜色,最后的绿色还可以设置点击,代码如下:

import 'package:flutter/material.dart';
import 'package:flutter/gestures.dart';
//import 'ur';

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

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text('Text示例'),
        ),
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: [
              Text(
                'Hello My Name is WeiWenYi,And You?...',
                maxLines: 1,
                overflow: TextOverflow.ellipsis,
                softWrap: true,
                style: TextStyle(
                  fontSize: 20.0,
                  decoration: TextDecoration.lineThrough,
                  decorationStyle: TextDecorationStyle.wavy
                ),
              ),
              SizedBox(
                height: 10.0,
              ),
              RichText(
                text: TextSpan(
                  text: '你好啊,我是很牛逼的人物哦!',
                  style: TextStyle(color: Color(0xffff0000),fontSize: 20.0),
                  children: [
                    TextSpan(
                      text: '康师傅啊,,你在干嘛呀,'
                    ),
                    TextSpan(
                      text: '哒哒哒哒哒哒哒,,哈哈哈哈哈',
                      style: TextStyle(color: Color(0xff00ff00)),
                      recognizer: TapGestureRecognizer()..onTap = () async {
                        //这里做点击事件
//                        String url = 'http://www.baidu.com';
//                        if (await canlaunch(url)){
//                          await launch(url);
//                        }
                      }
                    ),
                  ],
                ),
              )
            ],
          ),
        ),
      ),
    );
  }
}

快去试试吧!

你可能感兴趣的:(flutter,dart)