颤振 - 在文本中插入溢出省略号

颤振 - 在文本中插入溢出省略号

问题描述:

我试图创建一个中心文本具有最大大小的行,并且如果文本内容太大,它适合大小。颤振 - 在文本中插入溢出省略号

我插入TextOverflow.ellipsis属性以缩短文本并插入三重点...但它不起作用。

main.dart

import 'package:flutter/material.dart'; 

void main() { 
runApp(new MyApp()); 
} 

class MyApp extends StatelessWidget { 
    @override 
    Widget build(BuildContext context) { 
    return new MaterialApp(
     home: new HomePage(), 
    ); 
    } 
} 

class HomePage extends StatelessWidget { 
    @override 
    Widget build(BuildContext context) => new Scaffold(
    appBar: new AppBar(
     backgroundColor: new Color(0xFF26C6DA), 
    ), 
    body: new ListView (
     children: <Widget>[ 
     new Card(
      child: new Container(
      padding: new EdgeInsets.symmetric(horizontal: 16.0, vertical: 18.0), 
      child: new Row(
       children: <Widget>[ 
       new Container(
        padding: new EdgeInsets.only(right: 24.0), 
        child: new CircleAvatar(
        backgroundColor: new Color(0xFFF5F5F5), 
        radius: 16.0, 
       ) 
       ), 
       new Container(
        padding: new EdgeInsets.only(right: 13.0), 
        child: new Text(
        'Text lar...', 
        overflow: TextOverflow.ellipsis, 
        style: new TextStyle(
         fontSize: 13.0, 
         fontFamily: 'Roboto', 
         color: new Color(0xFF212121), 
         fontWeight: FontWeight.bold, 
        ), 
       ), 
       ), 
       new Container(
        child: new Column(
        crossAxisAlignment: CrossAxisAlignment.end, 
        children: <Widget>[ 
         new Row(
         children: <Widget>[ 
          new Text(
          'Bill ', 
          style: new TextStyle(
           fontSize: 12.0, 
           fontFamily: 'Roboto', 
           color: new Color(0xFF9E9E9E) 
          ), 
         ), 
          new Text(
          '\$ -999.999.999,95', 
          style: new TextStyle(
           fontSize: 14.0, 
           fontFamily: 'Roboto', 
           color: new Color(0xFF212121) 
          ), 
         ), 
         ], 
        ), 
         new Row(
         children: <Widget>[ 
          new Text(
          'Limit ', 
          style: new TextStyle(
           fontSize: 12.0, 
           fontFamily: 'Roboto', 
           color: new Color(0xFF9E9E9E) 
          ), 
         ), 
          new Text(
          'R\$ 900.000.000,95', 
          style: new TextStyle(
           fontSize: 14.0, 
           fontFamily: 'Roboto', 
           color: new Color(0xFF9E9E9E) 
          ), 
         ), 
         ], 
        ), 
        ] 
       ) 
       ) 
       ], 
      ), 
     ) 
     ), 
     ] 
    ) 
); 
} 

结果:

enter image description here

预期:

enter image description here

您应该将Container包装在Flexible中,以便让您的知道Container的宽度比其内在宽度窄。 Expanded也将工作。

screenshot

  new Flexible(
       child: new Container(
       padding: new EdgeInsets.only(right: 13.0), 
       child: new Text(
        'Text largeeeeeeeeeeeeeeeeeeeeeee', 
        overflow: TextOverflow.ellipsis, 
        style: new TextStyle(
        fontSize: 13.0, 
        fontFamily: 'Roboto', 
        color: new Color(0xFF212121), 
        fontWeight: FontWeight.bold, 
       ), 
       ), 
      ), 
      ), 

我觉得父容器需要给予适当大小的maxWidth。它看起来像文本框将填充上面给出的任何空间。