Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.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 颤振-在一列溢出的扩展小部件中的文本_Flutter_Flutter Layout - Fatal编程技术网

Flutter 颤振-在一列溢出的扩展小部件中的文本

Flutter 颤振-在一列溢出的扩展小部件中的文本,flutter,flutter-layout,Flutter,Flutter Layout,我想要实现的是在固定高度的列中有一个文本小部件。当文本很长时,我希望overflow属性设置为textoflow.省略号。文本小部件的maxLines属性设置为一个高值,以允许它进行总结。但是在这个专栏中也有其他小部件,在文本小部件之前和之后。文本小部件位于扩展的小部件中,因此它在列中占据了同样多的空间。完整代码粘贴在下面 此设置的问题是文本溢出了其父容器。我在容器上有一个边框装饰,显示了这种情况。为什么会发生这种情况,我该如何解决它 import 'package:flutter/materi

我想要实现的是在固定高度的列中有一个文本小部件。当文本很长时,我希望
overflow
属性设置为
textoflow.省略号
。文本小部件的
maxLines
属性设置为一个高值,以允许它进行总结。但是在这个专栏中也有其他小部件,在文本小部件之前和之后。文本小部件位于扩展的小部件中,因此它在列中占据了同样多的空间。完整代码粘贴在下面

此设置的问题是文本溢出了其父容器。我在容器上有一个边框装饰,显示了这种情况。为什么会发生这种情况,我该如何解决它

import 'package:flutter/material.dart';

void main() {
  runApp(App());
}

class App extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text("Overflow"),
        ),
        body: Center(
          child: Container(
              width: 200.0,
              height: 250.0,
              child: Card(
                  child: Column(children: <Widget>[
                Image.asset(
                  "assets/bereket.jpg",
                  width: double.infinity,
                  fit: BoxFit.cover,
                ),
                Expanded(
                    child: Container(
                        padding: EdgeInsets.all(8.0),
                        child: (Column(
                          children: [
                            Text(
                                "በረከት ስምኦን፡ «ወይዘሮ አና ጎሜዝ፤ እርስዎ አያገባዎትም! አርፈው ይቀመጡ በልልኝ»",
                                maxLines: 2,
                                style: Theme.of(context)
                                    .primaryTextTheme
                                    .subhead
                                    .copyWith(
                                      color: Colors.black,
                                    ),
                                overflow: TextOverflow.ellipsis),
                            Expanded(
                                child: Container(
                                    decoration: BoxDecoration(
                                      border: Border.all(
                                          color: Colors.green, width: 2.0),
                                    ),
                                    child: Text(
                                      """ባለፉት ሁለት አስርት ዓመታት በኢትዮጵያ ፖለቲካ ከፍተኛ ተጽእኖ ፈጣሪ የነበሩት አቶ በረከት ስምኦን በቅርቡ ከብአዴን ማእከላዊ ኮሚቴ አባልነት መታገዳቸው ይታወሳል።

አቶ በርከት የብአዴን ውሳኔን በተመለከተ እና የወደፊት የፖለቲካ ህይወታቸው ምን ሊሆን እንደሚችል ለቢቢሲ አጋርተዋል።""",
                                      maxLines: 10,
                                      style: Theme.of(context)
                                          .primaryTextTheme
                                          .caption
                                          .copyWith(color: Colors.black),
                                      overflow: TextOverflow.ellipsis,
                                    ))),
                            Row(
                              crossAxisAlignment: CrossAxisAlignment.center,
                              children: <Widget>[
                                Container(
                                  width: 20.0,
                                  height: 20.0,
                                  child: Image.asset("assets/bbc.png"),
                                ),
                                SizedBox(width: 8.0),
                                Text('ቢቢሲ - ከሁለት ሰአት በፊት',
                                    style: Theme.of(context)
                                        .textTheme
                                        .caption
                                        .copyWith(fontSize: 10.0))
                              ],
                            )
                          ],
                        ))))
              ]))),
        ),
      ),
    );
  }
}
导入“包装:颤振/材料.省道”;
void main(){
runApp(App());
}
类应用程序扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
返回材料PP(
家:脚手架(
appBar:appBar(
标题:文本(“溢出”),
),
正文:中(
子:容器(
宽度:200.0,
高度:250.0,
孩子:卡片(
子项:列(子项:[
影像资产(
“assets/berket.jpg”,
宽度:double.infinity,
适合:BoxFit.cover,
),
扩大(
子:容器(
填充:边缘设置。全部(8.0),
child:(列)(
儿童:[
正文(
"በረከት ስምኦን፡ «ወይዘሮ አና ጎሜዝ፤ እርስዎ አያገባዎትም! አርፈው ይቀመጡ በልልኝ»",
maxLines:2,
风格:主题(上下文)
.primaryTextTheme
.分目
.抄袭(
颜色:颜色,黑色,
),
溢出:text溢出。省略号),
扩大(
子:容器(
装饰:盒子装饰(
边界:边界(
颜色:颜色。绿色,宽度:2.0),
),
子:文本(
"""ባለፉት ሁለት አስርት ዓመታት በኢትዮጵያ ፖለቲካ ከፍተኛ ተጽእኖ ፈጣሪ የነበሩት አቶ በረከት ስምኦን በቅርቡ ከብአዴን ማእከላዊ ኮሚቴ አባልነት መታገዳቸው ይታወሳል።
አቶ በርከት የብአዴን ውሳኔን በተመለከተ እና የወደፊት የፖለቲካ ህይወታቸው ምን ሊሆን እንደሚችል ለቢቢሲ አጋርተዋል።""",
最大行数:10,
风格:主题(上下文)
.primaryTextTheme
说明文字
.copyWith(颜色:颜色。黑色),
溢出:TextOverflow.省略号,
))),
划船(
crossAxisAlignment:crossAxisAlignment.center,
儿童:[
容器(
宽度:20.0,
身高:20.0,
子项:Image.asset(“assets/bbc.png”),
),
尺寸箱(宽度:8.0),
文本('ቢቢሲ - ከሁለት ሰአት በፊት',
风格:主题(上下文)
.文本主题
说明文字
.copyWith(字体大小:10.0))
],
)
],
))))
]))),
),
),
);
}
}

根据我的经验,你应该为包含溢出文本的
容器指定一个固定的宽度,如本文所述。

尝试用“灵活”而不是“可扩展”来包装你的专栏

我也有同样的问题,文本在列中溢出,并使用“flexible”包装列本身,以使文本变小

         Flexible(
          child: Padding(
            padding: const EdgeInsets.only(left: 8.0),
            child: Column(
              crossAxisAlignment: CrossAxisAlignment.start,
              children: <Widget>[
                Padding(
                  padding: const EdgeInsets.only(bottom: 8.0),
                  child: Text(
                    'Name',
                    style: CustomTextStyle.blueTitle14(context),
                  ),
                ),
                Padding(
                  padding: const EdgeInsets.only(bottom: 4.0),
                  child: Text('Long text'),
                ),
              ],
            ),
          ),
        ),
灵活(
孩子:填充(
填充:仅限常量边集(左:8.0),
子:列(
crossAxisAlignment:crossAxisAlignment.start,
儿童:[
填充物(
填充:仅限常量边集(底部:8.0),
子:文本(
“姓名”,
样式:CustomTextStyle.blueTitle14(上下文),
),
),
填充物(
填充:仅限常量边集(底部:4.0),
子项:文本(“长文本”),
),
],
),
),
),
从行中删除输入栏('\n'),此行将省略号