【问题标题】:How can I position text in flutter?如何在颤动中定位文本?
【发布时间】:2021-01-13 23:36:52
【问题描述】:

我是新来的颤振。我想在按钮上方设置一个文本/标签。我在flutter中没有找到任何简单的文本或标签小部件。

文字应该很大(图片)并且在屏幕的右侧,我想保持按钮的位置。如何使用 Flutter 实现这一目标?

感谢您的帮助。

 @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        body: Padding(
          padding: const EdgeInsets.only(top: 375.0),
          child: Column(
            children: <Widget>[
              Row(
                mainAxisAlignment: MainAxisAlignment.spaceEvenly,
                children: [
                  SizedBox(
                    height: 100,
                    width: 90,
                    child: FloatingActionButton(
                      elevation: 0.2,
                      onPressed: () {},
                      child: Text("1"),
                    ),
                  ),
                  SizedBox(
                    height: 100,
                    width: 90,
                    child: FloatingActionButton(
                      elevation: 0.2,
                      onPressed: () {},
                      child: Text("2"),
                    ),
                  ),
                  SizedBox(
                    height: 100,
                    width: 90,
                    child: FloatingActionButton(
                      elevation: 0.2,
                      onPressed: () {},
                      child: Text("3"),
                    ),
                  ),
                  SizedBox(
                    height: 100,
                    width: 90,
                    child: FloatingActionButton(
                      elevation: 0.2,
                      onPressed: () {},
                      child: Text("+"),
                    ),
                  ),
                ],
              ),
              SizedBox(
                height: 20,
              ),
              Row(
                mainAxisAlignment: MainAxisAlignment.spaceEvenly,
                children: [
                  SizedBox(
                    height: 100,
                    width: 90,
                    child: FloatingActionButton(
                      elevation: 0.2,
                      onPressed: () {},
                      child: Text("4"),
                    ),
                  ),
                  SizedBox(
                    height: 100,
                    width: 90,
                    child: FloatingActionButton(
                      elevation: 0.2,
                      onPressed: () {},
                      child: Text("5"),
                    ),
                  ),
                  SizedBox(
                    height: 100,
                    width: 90,
                    child: FloatingActionButton(
                      elevation: 0.2,
                      onPressed: () {},
                      child: Text("6"),
                    ),
                  ),
                  SizedBox(
                    height: 100,
                    width: 90,
                    child: FloatingActionButton(
                      elevation: 0.2,
                      onPressed: () {},
                      child: Text("-"),
                    ),
                  ),
                ],
              ),
              SizedBox(
                height: 20,
              ),
              Row(
                mainAxisAlignment: MainAxisAlignment.spaceEvenly,
                children: [
                  SizedBox(
                    height: 100,
                    width: 90,
                    child: FloatingActionButton(
                      elevation: 0.2,
                      onPressed: () {},
                      child: Text("7"),
                    ),
                  ),
                  SizedBox(
                    height: 100,
                    width: 90,
                    child: FloatingActionButton(
                      elevation: 0.2,
                      onPressed: () {},
                      child: Text("8"),
                    ),
                  ),
                  SizedBox(
                    height: 100,
                    width: 90,
                    child: FloatingActionButton(
                      elevation: 0.2,
                      onPressed: () {},
                      child: Text("9"),
                    ),
                  ),
                  SizedBox(
                    height: 100,
                    width: 90,
                    child: FloatingActionButton(
                      elevation: 0.2,
                      onPressed: () {},
                      child: Text("*"),
                    ),
                  ),
                ],
              ),
              SizedBox(
                height: 20,
              ),
              Row(
                mainAxisAlignment: MainAxisAlignment.spaceEvenly,
                children: [
                  SizedBox(
                    height: 80,
                    width: 290,
                    child: FloatingActionButton.extended(
                      elevation: 0.2,
                      onPressed: () {},
                      label: Text("="),
                      isExtended: true,
                    ),
                  ),
                  SizedBox(
                    height: 100,
                    width: 90,
                    child: FloatingActionButton(
                      elevation: 0.2,
                      onPressed: () {},
                      child: Text("/"),
                    ),
                  )
                ],
              ),
            ],
          ),
        ),
      ),
    );
  }
}

【问题讨论】:

  • 用 Center() 包裹它

标签: flutter dart


【解决方案1】:

你可以使用:

Center(
   child: Text(
        "Your text goes here",
         style: TextStyle(
           fontSize: 30.0
         ),
   ),
),

【讨论】:

    【解决方案2】:

    使用扩展:

    Expanded(
              child: Align(
                alignment: Alignment.centerRight,
                child: Text(
                  "My Text",
                  textAlign: TextAlign.right,
                  style: TextStyle(fontSize: 68),
                ),
              ),
            ),
    

    完整代码:

          @override
      Widget build(BuildContext context) {
        return MaterialApp(
          debugShowCheckedModeBanner: false,
          home: Scaffold(
            body: Column(
              children: <Widget>[
                SizedBox(height: 24,),
                Expanded(
                  child: Align(
                    alignment: Alignment.centerRight,
                    child: Text(
                      "My Text",
                      textAlign: TextAlign.right,
                      style: TextStyle(fontSize: 68),
                    ),
                  ),
                ),
                Row(
                  mainAxisAlignment: MainAxisAlignment.spaceEvenly,
                  children: [
                    SizedBox(
                      height: 100,
                      width: 90,
                      child: FloatingActionButton(
                        elevation: 0.2,
                        onPressed: () {},
                        child: Text("1"),
                      ),
                    ),
                    SizedBox(
                      height: 100,
                      width: 90,
                      child: FloatingActionButton(
                        elevation: 0.2,
                        onPressed: () {},
                        child: Text("2"),
                      ),
                    ),
                    SizedBox(
                      height: 100,
                      width: 90,
                      child: FloatingActionButton(
                        elevation: 0.2,
                        onPressed: () {},
                        child: Text("3"),
                      ),
                    ),
                    SizedBox(
                      height: 100,
                      width: 90,
                      child: FloatingActionButton(
                        elevation: 0.2,
                        onPressed: () {},
                        child: Text("+"),
                      ),
                    ),
                  ],
                ),
                SizedBox(
                  height: 20,
                ),
                Row(
                  mainAxisAlignment: MainAxisAlignment.spaceEvenly,
                  children: [
                    SizedBox(
                      height: 100,
                      width: 90,
                      child: FloatingActionButton(
                        elevation: 0.2,
                        onPressed: () {},
                        child: Text("4"),
                      ),
                    ),
                    SizedBox(
                      height: 100,
                      width: 90,
                      child: FloatingActionButton(
                        elevation: 0.2,
                        onPressed: () {},
                        child: Text("5"),
                      ),
                    ),
                    SizedBox(
                      height: 100,
                      width: 90,
                      child: FloatingActionButton(
                        elevation: 0.2,
                        onPressed: () {},
                        child: Text("6"),
                      ),
                    ),
                    SizedBox(
                      height: 100,
                      width: 90,
                      child: FloatingActionButton(
                        elevation: 0.2,
                        onPressed: () {},
                        child: Text("-"),
                      ),
                    ),
                  ],
                ),
                SizedBox(
                  height: 20,
                ),
                Row(
                  mainAxisAlignment: MainAxisAlignment.spaceEvenly,
                  children: [
                    SizedBox(
                      height: 100,
                      width: 90,
                      child: FloatingActionButton(
                        elevation: 0.2,
                        onPressed: () {},
                        child: Text("7"),
                      ),
                    ),
                    SizedBox(
                      height: 100,
                      width: 90,
                      child: FloatingActionButton(
                        elevation: 0.2,
                        onPressed: () {},
                        child: Text("8"),
                      ),
                    ),
                    SizedBox(
                      height: 100,
                      width: 90,
                      child: FloatingActionButton(
                        elevation: 0.2,
                        onPressed: () {},
                        child: Text("9"),
                      ),
                    ),
                    SizedBox(
                      height: 100,
                      width: 90,
                      child: FloatingActionButton(
                        elevation: 0.2,
                        onPressed: () {},
                        child: Text("*"),
                      ),
                    ),
                  ],
                ),
                SizedBox(
                  height: 20,
                ),
                Row(
                  mainAxisAlignment: MainAxisAlignment.spaceEvenly,
                  children: [
                    SizedBox(
                      height: 80,
                      width: 290,
                      child: FloatingActionButton.extended(
                        elevation: 0.2,
                        onPressed: () {},
                        label: Text("="),
                        isExtended: true,
                      ),
                    ),
                    SizedBox(
                      height: 100,
                      width: 90,
                      child: FloatingActionButton(
                        elevation: 0.2,
                        onPressed: () {},
                        child: Text("/"),
                      ),
                    )
                  ],
                ),
              ],
            ),
          ),
        );
      }
    

    【讨论】:

      猜你喜欢
      • 2019-11-12
      • 2019-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-05
      • 2021-07-01
      相关资源
      最近更新 更多