Flutter 如何设置颤振文本最大长度值?

Flutter 如何设置颤振文本最大长度值?,flutter,flutter-layout,Flutter,Flutter Layout,我正在使用颤振编程。我需要在标题旁边显示标题和按钮。如果文本长度较短,按钮也应显示在文本旁边。如果文本长度更大,我想将文本长度固定为最大200px,并需要显示标题旁边的按钮 我正在使用下面的代码。而且可以用更少的文本长度很好地工作 问题是:若文本长度更大,那个么我的按钮将移出屏幕。您可以在下面的附图中看到这种行为 Row( children: <Widget>[ Container(

我正在使用颤振编程。我需要在标题旁边显示标题和按钮。如果文本长度较短,按钮也应显示在文本旁边。如果文本长度更大,我想将文本长度固定为最大200px,并需要显示标题旁边的按钮

我正在使用下面的代码。而且可以用更少的文本长度很好地工作

问题是:若文本长度更大,那个么我的按钮将移出屏幕。您可以在下面的附图中看到这种行为

          Row(
            children: <Widget>[
                    Container(
                      child: RichText(
                        overflow: TextOverflow.ellipsis,
                        strutStyle: StrutStyle(fontSize: 12.0),
                        text: TextSpan(
                            style: TextStyle(color: Colors.white), text: model.title),
                      ),
                    ),

                    Text("My Button"),
                  ],
                )
行(
儿童:[
容器(
孩子:RichText(
溢出:TextOverflow.省略号,
strutStyle:strutStyle(字体大小:12.0),
text:TextSpan(
样式:text样式(颜色:Colors.white),文本:model.title),
),
),
文本(“我的按钮”),
],
)

您可以使用扩展的或为富格文本容器指定固定宽度,如使用扩展的小部件:-

Row(
                            children: <Widget>[
                              Expanded(
                                child: RichText(
                                  overflow: TextOverflow.ellipsis,
                                  strutStyle: StrutStyle(fontSize: 12.0),
                                  text: TextSpan(
                                      style: TextStyle(color: Colors.white), text: model.title),
                                ),
                              ),

                              Text("My Button"),
                            ],
                          )
行(
儿童:[
扩大(
孩子:RichText(
溢出:TextOverflow.省略号,
strutStyle:strutStyle(字体大小:12.0),
text:TextSpan(
样式:text样式(颜色:Colors.white),文本:model.title),
),
),
文本(“我的按钮”),
],
)

我认为
RichText
Text
小部件没有
maxLength
属性。如果您使用的是
RichText
类,则可以使用
maxLines
属性。我试图重新创建您的案例,并将
RichText
小部件包装为
Flexible
小部件,使子小部件仅使用最小的可用空间。但我无法复制你提到的错误。我使用的长文本会得到
省略号
,而
按钮
不会离开屏幕。请注意,我还使用了
maxLines
属性,如果将该属性设置为2,将在不移动
按钮的情况下将长文本换行,并且长文本将显示为
省略号。工作代码示例如下:

body: Center(
          child: Row(
            children: <Widget>[
              Container(
                child: Flexible(
                  child: RichText(
                    maxLines: 2,
                    overflow: TextOverflow.ellipsis,
                    strutStyle: StrutStyle(fontSize: 12.0),
                    text: TextSpan(
                        style: TextStyle(color: Colors.white), text: 'I am using Flutter programming. I need to display a title and a button next to the title. If the text length is less button also should display next to the text. If text length is more i want to fix the text length as maximum 200px and need to show the button next to the title.'),
                  ),
                )

              ),

              Text("My Button"),
            ],
          )
        )
主体:中心(
孩子:排(
儿童:[
容器(
儿童:灵活(
孩子:RichText(
maxLines:2,
溢出:TextOverflow.省略号,
strutStyle:strutStyle(字体大小:12.0),
text:TextSpan(
样式:TextStyle(颜色:Colors.white),text:“我正在使用flift编程。我需要在标题旁边显示标题和按钮。如果文本长度较短,则按钮也应显示在文本旁边。如果文本长度较长,则我希望将文本长度固定为最大200px,并需要在标题旁边显示按钮。”),
),
)
),
文本(“我的按钮”),
],
)
)

如果将
maxLines
设置为1,则长文本将以省略号换行


希望这有帮助。

您可以输入最大字符数

text.substring(0,150)

若我给容器指定了固定的大小,那个么当文本长度很小时,我的按钮就不靠近文本了。并且已经尝试过扩展,如果文本长度更大,则没有用。与我在问题附加图像中提到的问题相同。请尝试使用(textAlign:textAlign.right)将富格文本和换行文本(“我的按钮”)与Align小部件一起使用,并将(Align:alignment.centerLeft)赋予它。希望这将有助于解决您的问题problem@manpereet,谢谢你的回复。我已经解决了文本长度的问题。如果字符串长度超过16个字符,那么我将使用以“.”结尾的子字符串。所以最后,当显示它时,将显示16个字符+。。谢谢你的建议。我已经用substring解决了这个问题。如果字符串长度超过16个字符,那么我将使用以“.”结尾的子字符串。所以最后,当显示它时,将显示16个字符+。。对于长文本。感谢您的回复。我已经解决了子字符串的问题。如果字符串长度超过16个字符,那么我将使用以“.”结尾的子字符串。所以最后,当显示它时,将显示16个字符+。。对于长文本。