我已经在Flutter中创建了一个登录页面。我使用int sum = 0;
int currentIn = in;
for(int i = 0; i < in; i++) {
sum = sum + (in - i) * currentIn;
currentIn = currentIn * 10;
}
System.out.println(sum);
使此页面可滚动。
我已经使用表单验证来验证用户名和密码文本表单字段。
问题是当SingleChildScrollView
下面显示错误消息时,登录按钮被向下移。
我还使用了TextFormField
来启用滚动,但是就移位而言,行为是相同的。
我是Flutter的新手,正在寻求帮助。 我在下面提供了代码和屏幕截图。
谢谢。
屏幕截图
登录页面
ListView
登录表单
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'login_form.dart';
class LoginPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
body: SingleChildScrollView(child: LoginForm()),
);
}
}
答案 0 :(得分:1)
使用具有固定 maxHeight 和 minHeight 的 ConstrainedBox
ConstrainedBox(
constraints: BoxConstraints(
maxHeight: 70.0,
minHeight: 70.0,
child: TextFormField(...),
),
);
答案 1 :(得分:0)
尝试将usernameField和passwordField包装在扩展小部件中
Expanded(child: usernameField),
SizedBox(
height: 45.0,
),
Expanded(child: passwordField),
答案 2 :(得分:0)
使用“容器”小部件设置全高。
Container(
width: double.infinity,
height: 73, //(text field height + error label height)
child: TextFormField(<your Text Form Field>)
)