【问题标题】:How to have same formatting in flutter as in the webapp?如何在颤振中使用与 webapp 中相同的格式?
【发布时间】:2021-05-11 18:06:08
【问题描述】:

我正在尝试为我的 web 应用程序创建一个颤振应用程序。数据源是 API。我能够根据需要提取数据并显示。但是,该格式不适用于同一数据源。这是我编写数据的代码。我已经展示了它在移动网络 (chrome) 上的外观以及它在应用程序上的外观。你能问一下为什么选项中的“mm”会在下一行显示相同的数据吗?另外如何在应用程序中复制相同的格式?

class QuestionTile extends StatefulWidget {
  final int questionID;

  QuestionTile({Key key, this.questionID}) : super(key: key);

  @override
  _QuestionTileState createState() => _QuestionTileState(questionID);

}

class _QuestionTileState extends State<QuestionTile> {
  final int questionID;
  String optionSelected = "";

  _QuestionTileState(this.questionID);
  int _selectedValue;

  //int value;
  int ind;
  @override
  Widget build(BuildContext context) {
    final QuizProvider quizP = Provider.of<QuizProvider>(context);
    print(widget.questionID);
   
    return Container(child: Column(
      children:<Widget> [
        Padding(
          padding: const EdgeInsets.only(left: 10.0, top: 10.0, bottom: 10.0, right: 10.0),
          child: Row(
            children: [
              Expanded(
                  child: Html(
                    data: quizP.quizzes[0].getQuestions[widget.questionID].content,
                    defaultTextStyle: TextStyle(fontSize: 20, color: Colors.black, fontFamily: 'system-ui'),
                  )
              ),
            ],
          ),
        ),
        
        quizP.quizzes[0].getQuestions.length == null
            ? Container(
          child: Center(child: Text("Opps , Looks like we don't have any questions"),),
        )
            : ListView.builder(
          itemCount: quizP.quizzes[0].getQuestions[widget.questionID].getanswers.length,
          scrollDirection: Axis.vertical,
          shrinkWrap: true,
          itemBuilder: (context, itemCount) {
           return RadioListTile(
              value: quizP.quizzes[0].getQuestions[widget.questionID].getanswers[itemCount].id,
              groupValue: _selectedValue,
              onChanged: (answer){
                print(quizP.quizzes[0].getQuestions[widget.questionID].getanswers[itemCount].id);
                setState(() {
                  _selectedValue = answer;               
                });
              },
              title: Text("${ quizP.quizzes[0].getQuestions[widget.questionID].getanswers[itemCount].content.toString()}"),

            );
          },
        ),
      ],

    ),
    );
  }
}

原始数据:

"id": 5889,
                "content": "<p>An oil drop of 12 excess electrons is held stationary under a constant electric field of 2.55 x 10<sup>4</sup>N/C in Millikan&rsquo;s oil drop experiment. The density of oil is 1.26g/cc, g = 9.81m/s<sup>2</sup> and e = 1.60 x 10<sup>-19</sup>C. The radius of the drop is:</p>\r\n\r\n<p>(A) 9.82mm</p>\r\n\r\n<p>(B) 9.82 x 10<sup>-2</sup> mm</p>\r\n\r\n<p>(C) 9.82 x 10<sup>-4</sup> mm</p>\r\n\r\n<p>(D) 9.82 x 10<sup>-6</sup> mm</p>\r\n<gdiv></gdiv>",
                "getanswers": [
                    {
                        "id": 16134,
                        "content": "A",
                        "correct": false,
                        "question_id": 5889
                    },
                    {
                        "id": 16135,
                        "content": "B",
                        "correct": false,
                        "question_id": 5889
                    },
                    {
                        "id": 16136,
                        "content": "C",
                        "correct": true,
                        "question_id": 5889
                    },
                    {
                        "id": 16137,
                        "content": "D",
                        "correct": false,
                        "question_id": 5889
                    }
                ]

【问题讨论】:

  • 您可以将您提供的原始数据输入添加到 Html 小部件吗?我假设您使用的是flutter_html。似乎问题出在插入符号 (^) 上。
  • 是的。似乎这就是问题所在。我已经添加了原始数据供您参考。谢谢。

标签: android flutter dart flutter-layout


【解决方案1】:

flutter_html 中解决了格式问题:^2.0.0

【讨论】:

    猜你喜欢
    • 2021-11-19
    • 2019-07-18
    • 2021-12-29
    • 2019-01-23
    • 2021-03-29
    • 2020-08-25
    • 2020-05-03
    • 2018-06-16
    • 2022-11-12
    相关资源
    最近更新 更多