text - 如何使用 Flutter 编写带有要点的段落?

使用 HTML,我可以像这样在段落中添加项目符号:

<ul>
   <li> example </li>
   <li> example </li>
   <li> example </li>
<ul>

如何在 Flutter 中编写项目符号表?

new Text(''),

最佳答案

如果您不想下载另一个库(例如 flutter_markdown),并且您的一个或多个列表项包含跨越多行的冗长文本,我会选择 Raegtime 的答案。但是,由于它假定一个带有换行符的字符串,我想为带有字符串的列表制作一个版本,这是一个更常见的场景。在下面的代码中,Column 使列表项出现在不同的行中,Row 使项目符号点在其下方有空白。

import 'package:flutter/material.dart';

class UnorderedList extends StatelessWidget {
  UnorderedList(this.texts);
  final List<String> texts;

  @override
  Widget build(BuildContext context) {
    var widgetList = <Widget>[];
    for (var text in texts) {
      // Add list item
      widgetList.add(UnorderedListItem(text));
      // Add space between items
      widgetList.add(SizedBox(height: 5.0));
    }

    return Column(children: widgetList);
  }
}

class UnorderedListItem extends StatelessWidget {
  UnorderedListItem(this.text);
  final String text;

  @override
  Widget build(BuildContext context) {
    return Row(
      crossAxisAlignment: CrossAxisAlignment.start,
      children: <Widget>[
        Text("• "),
        Expanded(
          child: Text(text),
        ),
      ],
    );
  }
}

我们可以这样使用它:

UnorderedList([
    "What conclusions can we draw from the implementation?",
    "Are there any changes that need to be introduced permanently?"
])

并得到结果:

https://stackoverflow.com/questions/51690067/

相关文章:

flutter - 访问facebook登录时出现错误如何解决

android - Flutter 项目超过 .dex 方法引用计数限制

dart - Flutter 从 StatefulWidget 对象更改状态

flutter - 从网络加载图像时如何修复 Listview 滚动卡顿

flutter - 更新 Flutter 后 StaggeredGridView 不滚动

dart - 如何创建 "fake" Dart :io File from in-memory by

dart - Flutter 不会使用不同的参数重建相同的小部件

dart - Flutter 自定义范围 slider

flutter - Flutter 支持虚拟现实还是增强现实?

android - 如何禁用使用 Flutter 1.0 在 Google map 中点击标记时出现