flutter - Flutter:如何创建圆角文本表单并更改其背景颜色
问题描述
我创建了一个圆形文本表单并验证它,文本框看起来像这样
这是此文本框的代码
首先我创建一个容器
import 'package:flutter/material.dart';
class TextFieldContainer extends StatelessWidget {
final Widget child;
const TextFieldContainer({
Key key,
this.child,
}) : super(key: key);
@override
Widget build(BuildContext context) {
Size size = MediaQuery.of(context).size;
return Container(
margin: EdgeInsets.symmetric(vertical: 10),
padding: EdgeInsets.symmetric(horizontal: 20, vertical: 5),
width: size.width * 0.8,
decoration: BoxDecoration(
color: Colors.blue[50],
borderRadius: BorderRadius.circular(29),
),
child: child,
);
}
}
然后返回这个容器并创建一个 textformfield
emailtext(){
return TextFieldContainer(
child: TextFormField(
controller: TextEditingController(text: user.username),
autofillHints: [AutofillHints.email],
onEditingComplete: ()=>TextInput.finishAutofillContext(),
decoration: InputDecoration(
border: InputBorder.none,
icon: Icon(Icons.email,color: Colors.blue,),
labelText: 'Username'),
onChanged: (value){
user.username=value;
},
validator: (value) {
if (value.isEmpty) {
return 'Please enter username';
}
return null;
},
),
);
}
我对密码文本框做了同样的事情。
但是当我点击登录按钮时,错误消息显示如下
我想从这个蓝色容器外面展示它。
我使用了填充颜色,但这也不起作用。
如果有人知道如何做到这一点,请提供帮助。
解决方案
使用此代码:
Container(
alignment: Alignment.center,
padding: EdgeInsets.fromLTRB(30, 3, 20, 0),
margin: EdgeInsets.only(left: 10, right: 10),
height: 50,
decoration: BoxDecoration(
border: Border.all(color: Colors.black),
color: Colors.white,
borderRadius: BorderRadius.circular(10)),
child: TextField(
keyboardType: TextInputType.emailAddress,
cursorColor: Colors.black,
controller: emailController,
textInputAction: TextInputAction.search,
decoration: InputDecoration(
border: InputBorder.none,
suffixIcon: IconButton(
onPressed: () {},
icon: Icon(Icons.email_outlined),
color: Colors.grey,
),
hintText: 'Correo Electrónico',
hintStyle: TextStyle(color: Colors.black),
),
style: TextStyle(color: Colors.black),
),
推荐阅读
- flutter - 找不到吸气剂:“上下文”。字体大小:MediaQuery.textScaleFactorOf(context)*18,
- excel - 如何使用 axlsx 向 Excel 单元格添加背景图案?
- parallels - 无法删除使用 prlctl 创建的“vm”
- appium - Appium Touch Action 长按不显示任何交互
- javascript - 反应将带有 onClick 事件的 html 标记添加到 innerHTML
- android - 时间对话框有额外的空白。是材料之一
- java - 无法在目标/生成源中生成类
- reactjs - 如何禁止 React Big Calendar 事件拖到上一个日期
- authentication - 来自 Internet 的 EKS 基本身份验证
- flutter - 是否可以为 ListTile 设置边框?(扑)