fix: 通过移除内边距解决验证码数字显示不全问题
- 添加 contentPadding: EdgeInsets.zero 移除默认内边距 - 添加 isDense: true 使用紧凑模式 - 移除之前错误的 showCursor 逻辑 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
979780dd7e
commit
b49c9e1af5
|
|
@ -232,13 +232,12 @@ class _SmsVerifyPageState extends ConsumerState<SmsVerifyPage> {
|
|||
}
|
||||
|
||||
void _onCodeChanged(int index, String value) {
|
||||
// 每次输入都触发重建,以更新 showCursor 状态
|
||||
setState(() {
|
||||
// 清除错误信息
|
||||
if (_errorMessage != null) {
|
||||
// 清除错误信息
|
||||
if (_errorMessage != null) {
|
||||
setState(() {
|
||||
_errorMessage = null;
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
if (value.isNotEmpty) {
|
||||
// 输入了字符,移动到下一个
|
||||
|
|
@ -378,7 +377,6 @@ class _SmsVerifyPageState extends ConsumerState<SmsVerifyPage> {
|
|||
keyboardType: TextInputType.number,
|
||||
textAlign: TextAlign.center,
|
||||
maxLength: 1,
|
||||
showCursor: _controllers[index].text.isEmpty, // 空时显示光标,有内容时隐藏避免遮挡数字
|
||||
inputFormatters: [
|
||||
FilteringTextInputFormatter.digitsOnly,
|
||||
],
|
||||
|
|
@ -386,6 +384,8 @@ class _SmsVerifyPageState extends ConsumerState<SmsVerifyPage> {
|
|||
counterText: '',
|
||||
filled: true,
|
||||
fillColor: const Color(0xFFF5F5F5),
|
||||
contentPadding: EdgeInsets.zero, // 移除内边距,让数字完整居中显示
|
||||
isDense: true,
|
||||
border: OutlineInputBorder(
|
||||
borderRadius: BorderRadius.circular(12.r),
|
||||
borderSide: BorderSide.none,
|
||||
|
|
|
|||
Loading…
Reference in New Issue