简体   繁体   English

Flutter "RangeError (index): Invalid value: Valid value range is empty: 0 with WidgetSpan

[英]Flutter "RangeError (index): Invalid value: Valid value range is empty: 0 with WidgetSpan

I am trying to create the picture below in Flutter.我正在尝试在 Flutter 中创建下面的图片。 As you can see, I need a link and an image icon.如您所见,我需要一个链接和一个图像图标。 However, I am getting the "range" error in the console.但是,我在控制台中收到“范围”错误。

Here a snippet of my code这是我的代码片段

Widget build(BuildContext context) {
return Row(
  mainAxisAlignment: MainAxisAlignment.start,
  crossAxisAlignment: CrossAxisAlignment.start,
  children: <Widget>[
      Image.asset(
        "assets/images/checkbox-check.png",
      ),
    Expanded(
      child: Container(
        child: Wrap(
          children: [
            RichText(
              text: new TextSpan(
                children: [
                  TextSpan(
                    text: 'Email opportunities.  ',
                    style: TextStyle(
                        color: Palette.DARK_BLUE, fontSize: 16.0),
                  ),
                  TextSpan(
                    text: 'privacy policy',
                    style: TextStyle(
                        color: Palette.DARK_BLUE,
                        decoration: TextDecoration.underline),
                    recognizer: TapGestureRecognizer()
                      ..onTap = () {
                        launch();
                      },
                  ),
                  TextSpan(
                    text: ' and ',
                    
                  ),
                  TextSpan(
                    text: 'terms of use',
                    style: TextStyle(
                        decoration: TextDecoration.underline),
                    recognizer: TapGestureRecognizer()
                      ..onTap = () {
                        launch();
                      },
                  ),
                  WidgetSpan(
                    child: Icon(
                      Icons.info_outline,
                      color: Colors.red,
                    ),
                  )
                ],
              ),
            ),
          ],
        ),
      ),
    )
  ],
);

} } } }

Is there another method to create my UI?是否有另一种方法来创建我的 UI? I don't get an error screen but I see the error in the console.我没有看到错误屏幕,但我在控制台中看到了错误。 I have a wrap in the widget tree but don't think I need it.我在小部件树中有一个包装,但认为我不需要它。 but never the less, same issue if I remove it.但同样的问题,如果我删除它。

在此处输入图片说明

在此处输入图片说明

This is a Flutter issue when you use TextSpan with recognizer together with WidgetSpan: https://github.com/flutter/flutter/issues/51936当您将 TextSpan 与识别器与 WidgetSpan 一起使用时,这是一个 Flutter 问题: https : //github.com/flutter/flutter/issues/51936

A workaround is to wrap RichText in ExcludeSemantics :一种解决方法是将RichText包装在ExcludeSemantics

ExcludeSemantics(
  excluding: true,
  child: RichText( ... ),
),

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 flutter:RangeError(索引):无效值:有效值范围为空: - flutter : RangeError (index): Invalid value: Valid value range is empty: RangeError(索引):无效值:有效值范围为空:0,Flutter - RangeError (index): Invalid value: Valid value range is empty: 0, Flutter "RangeError (index): Invalid value: Valid value range is empty: 2" with flutter carousel - "RangeError (index): Invalid value: Valid value range is empty: 2" with flutter carousel RangeError(索引):无效值:有效值范围为空:0 - Flutter - RangeError (index): Invalid value: Valid value range is empty: 0 - Flutter RangeError (index): Invalid value: Valid value range is empty: 0 in flutter Firestore - RangeError (index): Invalid value: Valid value range is empty: 0 in flutter Firestore Flutter RangeError(索引):无效值:有效值范围为空:0 - Flutter RangeError (index): Invalid value: Valid value range is empty: 0 Flutter:RangeError(索引):无效值:有效值范围为空:-1 - Flutter: RangeError (index): Invalid value: Valid value range is empty: -1 flutter error : RangeError (index): Invalid value: 有效值范围为空:0 - flutter error : RangeError (index): Invalid value: Valid value range is empty: 0 RangeError(索引):无效值:有效值范围为空:0 | Flutter Firebase - RangeError (index): Invalid value: Valid value range is empty: 0 | Flutter Firebase RangeError(索引):无效值:有效值范围为空:0 错误 Flutter - RangeError (index): Invalid value: Valid value range is empty: 0 Error Flutter
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM