Flutter - 文字控件(进阶一)

2019-07-17  本文已影响0人  辻子路

我们在Text组件中介绍了Text的一些用法。该组件主要是用来显示文字的,那我们今天针对文字继续深入挖掘下。
首先先来定义一个自定义widget,返回Text组件:

class TextDemo extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Text('山不在高,有仙则名。水不在深,有龙则灵。斯是陋室,惟吾德馨。苔痕上阶绿,草色入帘青。谈笑有鸿儒,往来无白丁。可以调素琴,阅金经。无丝竹之乱耳,无案牍之劳形。南阳诸葛庐,西蜀子云亭。孔子云:何陋之有?')
  }
}

那这时如果Text里面要返回的文字里面包含变量该怎么办呢,例如我要显示文章名字,作者,他们用变量标示。
那这时候我们就该用该final来定义私有变量,通常变量前面加上_。

final String _author = '刘禹锡';
final String _title = '陋室铭';

随后在文字里面用_author和_title就行了,也就是变量前面加上$

  final String _author = '刘禹锡';
  final String _title = '陋室铭';
  @override
  Widget build(BuildContext context) {
    return Text(
      '《$_title》 -- $_author 山不在高,有仙则名。水不在深,有龙则灵。斯是陋室,惟吾德馨。苔痕上阶绿,草色入帘青。谈笑有鸿儒,往来无白丁。可以调素琴,阅金经。无丝竹之乱耳,无案牍之劳形。南阳诸葛庐,西蜀子云亭。孔子云:何陋之有?',
    );
  }
}

下来我们再给代码添加下东西:

class BasicDemo extends StatelessWidget {
  final TextStyle _textStyle = TextStyle(
    fontSize: 16.0,
    color: Colors.lightGreen,
  );

  final String _author = '刘禹锡';
  final String _title = '陋室铭';

  @override
  Widget build(BuildContext context) {
    return Text(
      '《$_title》 -- $_author 山不在高,有仙则名。水不在深,有龙则灵。斯是陋室,惟吾德馨。苔痕上阶绿,草色入帘青。谈笑有鸿儒,往来无白丁。可以调素琴,阅金经。无丝竹之乱耳,无案牍之劳形。南阳诸葛庐,西蜀子云亭。孔子云:何陋之有?',
      textAlign: TextAlign.center,
      style: _textStyle,
      maxLines: 3,
      overflow: TextOverflow.ellipsis,
    );
  }
}
上一篇 下一篇

猜你喜欢

热点阅读