CupertinoSliverNavigationBar大标题多行

时间:2019-02-26 09:49:31

标签: dart flutter

我正在创建一个使用Cupertino小部件的Flutter应用程序。现在,我正在使用CupertinoSliverNavigationBar,但是我确实希望标题是多行的。 目前,我写了以下内容:

@override
Widget build(BuildContext context) {
    return CupertinoPageScaffold(child: CustomScrollView(slivers: <Widget>[
      CupertinoSliverNavigationBar(largeTitle: Text(
          "Why doesn't this text wrap? I want it to be multiline...")),
      SliverFillRemaining(child: Container())
]));
}

我尝试了几种方法,例如将Text放在Flexbile中,但这是行不通的。关于如何达到预期效果的任何想法吗?

enter image description here

1 个答案:

答案 0 :(得分:0)

largeTitle的高度是有限的,我已经找到了使它变大的东西,因此我提出的解决方案要求使文本变小。

largeTitle: RichText(
                text: TextSpan(children: [
                  TextSpan(
                      text: "Why doesn't this text wrap?",
                      style: TextStyle(color: Colors.black, fontSize: 20)),
                  TextSpan(text: "\n"),
                  TextSpan(
                      text: "I want it to be multiline...",
                      style: TextStyle(color: Colors.orange, fontSize: 20))
                ]),
              ),

我认为您应该避免使用多行largeTitle,但是如果您确实想要,可以尝试一下。