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

如何保存用户在textfield输入的信息,实现App重启后自动填充?

实现TextField姓名自动填充的解决方案

iOS(Swift)实现步骤

  • 保存姓名:在用户输入完成(比如点击保存按钮、TextField编辑结束)时,用UserDefaults存储输入的姓名:
// 保存姓名到本地
if let name = nameTextField.text, !name.isEmpty {
    UserDefaults.standard.set(name, forKey: "savedUserName")
}
  • 自动填充:在页面加载时(比如viewDidLoad方法)读取存储的姓名,设置给TextField:
override func viewDidLoad() {
    super.viewDidLoad()
    // 读取并填充保存的姓名
    if let savedName = UserDefaults.standard.string(forKey: "savedUserName") {
        nameTextField.text = savedName
    }
}

提示:UserDefaults适合存储轻量非敏感数据,比如用户名这类简单字符串,不要用来存密码等隐私信息。

Android(Kotlin)实现步骤

  • 保存姓名:通过SharedPreferences存储输入的姓名,可在输入框失去焦点或用户点击保存时执行:
// 获取SharedPreferences实例
val sharedPref = getSharedPreferences("AppPrefs", Context.MODE_PRIVATE)
// 写入姓名
nameEditText.text?.toString()?.takeIf { it.isNotEmpty() }?.let { name ->
    sharedPref.edit().putString("savedUserName", name).apply()
}
  • 自动填充:在Activity的onCreate方法中读取存储的姓名,设置给EditText:
override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    
    val sharedPref = getSharedPreferences("AppPrefs", Context.MODE_PRIVATE)
    // 读取并填充姓名
    val savedName = sharedPref.getString("savedUserName", "")
    nameEditText.setText(savedName)
}

提示:SharedPreferences是Android存储轻量配置数据的常用方案,同样只适合存储非敏感的简单内容。

内容的提问来源于stack exchange,提问作者Amirreza Adham Hashemi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 14:27:02