Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter can';Don’别把我的长文字用颤音包在一张卡片里_Flutter_Dart_Flutter Layout - Fatal编程技术网

Flutter can';Don’别把我的长文字用颤音包在一张卡片里

Flutter can';Don’别把我的长文字用颤音包在一张卡片里,flutter,dart,flutter-layout,Flutter,Dart,Flutter Layout,我试着把一个文本放在一张卡片里,使卡片有点弹性,每当有一个长文本时,它会自动转到下一行,卡片就会变蓝 Widget ServiceCard (BuildContext context,double price){ return Container( height: 100, margin: EdgeInsets.only(top: 12,right: 8,left: 8), width: MediaQuery.of(context).size.width, c

我试着把一个文本放在一张卡片里,使卡片有点弹性,每当有一个长文本时,它会自动转到下一行,卡片就会变蓝

Widget ServiceCard (BuildContext context,double price){
  return Container(
    height: 100,
    margin: EdgeInsets.only(top: 12,right: 8,left: 8),
    width: MediaQuery.of(context).size.width,
    child: Card(
      shape: RoundedRectangleBorder(
          borderRadius: BorderRadius.circular(16)
      ),
      color: Colors.white,
      elevation: 8,
      child: Stack(
        children: <Widget>[
          Positioned(
            top: 8,
            left: 8,
            child: Text("\$$price"),
          ),
          Positioned(
            right: 8,
            top: 8,
            child: Container(
//              height: 70,
              child: Column(
                crossAxisAlignment: CrossAxisAlignment.end,
                children: <Widget>[
                  Container(
                      alignment: Alignment.topRight,
                      child: Text("غسيل شعر",style: TextStyle(fontSize: 16),)
                  ),
                  Opacity(
                      opacity:0.7,
                      child: Text(
                          "يتم تصفيف الشعر وغسيل يتم تصفيف الشعر وغسيل يتم تصفيف الشعر وغسيل"

                      )
                  ),
                ],
              ),
            ),
          )
        ],
      ),
    ),
  );
}
Widget服务卡(BuildContext上下文,双倍价格){
返回容器(
身高:100,
边距:仅限边集(顶部:12,右侧:8,左侧:8),
宽度:MediaQuery.of(context).size.width,
孩子:卡片(
形状:圆形矩形边框(
边界半径:边界半径。圆形(16)
),
颜色:颜色,白色,
立面图:8,
子:堆栈(
儿童:[
定位(
前8名,
左:8,,
子项:文本(“\$$price”),
),
定位(
右:8,,
前8名,
子:容器(
//身高:70,
子:列(
crossAxisAlignment:crossAxisAlignment.end,
儿童:[
容器(
对齐:alignment.topRight,
子项:文本(“字体大小:16”)
),
不透明(
不透明度:0.7,
子:文本(
"يتم تصفيف الشعر وغسيل يتم تصفيف الشعر وغسيل يتم تصفيف الشعر وغسيل"
)
),
],
),
),
)
],
),
),
);
}

有了这个代码,我让文本越过卡片,而不是进入下一行,甚至卡片也处于一个没有被包装的状态。要使
文本
在溢出时被包装,理想情况下,它的大小必须为全宽,并且
最大行
属性必须设置为

但是,我可以看到您遇到了一个“边缘案例”——所有文本都放在
堆栈
小部件中,默认情况下,该小部件的宽度不适合其子项

要解决此问题,请将
定位(…)
小部件更改为
定位。填充

e、 g

Positioned.fill(
右:8,,
前8名,
子:容器(
子:列(
crossAxisAlignment:crossAxisAlignment.stretch,//您可能也想使用它-默认情况下,它会拉伸所有子项的宽度
儿童:[
容器(
对齐:alignment.topRight,
子项:文本(“字体大小:16”)
),
不透明(
不透明度:0.7,
子:文本(
"يتم تصفيف الشعر وغسيل يتم تصفيف الشعر وغسيل يتم تصفيف الشعر وغسيل",
textDirection:textDirection.rtl,//如果您的语言从右向左阅读,我想这也会很有帮助。
)
),
],
),
),
)

让我知道这是否有用。

嘿,检查一下这个答案和问题,类似的一个。您需要为您的文本容器使用一个Flexible。感谢您的回复。。这真的有助于在文本问题你真棒!但遗憾的是,这不是我唯一的问题,这张卡片不适合内容大小。。你有什么线索吗?在你根据我的回答做出改变之前,这个问题存在吗?无论如何,我需要更多的细节来进一步帮助。