更改 FLUTTER 中 TextFormField 的默认边框颜色

Posted

技术标签:

【中文标题】更改 FLUTTER 中 TextFormField 的默认边框颜色【英文标题】:Change the default border color of TextFormField in FLUTTER 【发布时间】:2019-11-05 21:31:49 【问题描述】:

当 TextFormField 未激活时,无法更改默认边框颜色。当 TextFormField 未激活时,这将显示 DarkGrey-Border 颜色。那么,如何改变呢。

Theme(
              data: new ThemeData(
                primaryColor: Colors.red,
                primaryColorDark: Colors.black,
              ),
              child: TextFormField(
                decoration: new InputDecoration(
                  labelText: "Enter Email",
                  fillColor: Colors.white,
                  border: new OutlineInputBorder(
                    borderRadius: new BorderRadius.circular(25.0),
                    borderSide: new BorderSide(),
                  ),
                  //fillColor: Colors.green
                ),
                validator: (val) 
                  if (val.length == 0) 
                    return "Email cannot be empty";
                   else 
                    return null;
                  
                ,
                keyboardType: TextInputType.emailAddress,
                style: new TextStyle(
                  fontFamily: "Poppins",
                ),
              ),
            ),

【问题讨论】:

【参考方案1】:

使用InputDecoration中的enabledBorder,别忘了你也可以使用focusedBorder,像这样:

InputDecoration(
                labelText: "Enter Email",
                fillColor: Colors.white,
                focusedBorder: OutlineInputBorder(
                  borderRadius: BorderRadius.circular(25.0),
                  borderSide: BorderSide(
                    color: Colors.blue,
                  ),
                ),
                enabledBorder: OutlineInputBorder(
                  borderRadius: BorderRadius.circular(25.0),
                  borderSide: BorderSide(
                    color: Colors.red,
                    width: 2.0,
                  ),
                ),
)

这里有更多信息:https://api.flutter.dev/flutter/material/InputDecoration/enabledBorder.html

【讨论】:

以上是关于更改 FLUTTER 中 TextFormField 的默认边框颜色的主要内容,如果未能解决你的问题,请参考以下文章

Flutter:如何在 Flutter 中使用 Switch 更改主题 - 我已经使用 Provider 实现了这个明暗主题,但不能使用 switch 更改

如何在 Flutter 中更改布局

Flutter:在 iOS 中更改状态栏颜色

如何在flutter中访问和更改来自不同文件的变量

如何在 Flutter 中更改权限对话框 UI? [关闭]

Flutter 动态更改应用程序启动图标