You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TextField前景色异常:实时邮箱验证时部分字符颜色未正常切换

实时邮箱验证TextField文本颜色异常问题

我在实现实时邮箱验证功能时,iOS模拟器出现异常行为:当邮箱验证不通过时,TextField文本应为红色;验证通过时文本应为黑色,但实际输入过程中,部分字符会保持红色。为排除正则表达式的影响,我已将验证函数替换为简单的随机判断逻辑,代码如下:

struct EmailText: View {
    @State var textFieldValue: String = ""
    
    private func isValid(_ s: String) -> Bool {
        // 非真实验证逻辑,仅作简化演示
        return Int.random(in: 0 ... 1) == 1
    }
    
    var body: some View {
        TextField("", text: $textFieldValue)
            .foregroundColor(isValid(textFieldValue) ? .black : .red)
            .padding()
    }
}

演示时可观察到:输入文本过程中,当验证结果切换时,TextField内的部分字符并未同步更新颜色,仍保留之前的红色。

内容的提问来源于stack exchange,提问作者filip.karas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 12:25:19