c# - 我的输入文本没有保存,而是在 Unity 中恢复到原始值
问题描述
我正在尝试从输入字段中读取输入并单击按钮来存储该文本,我还想重置输入字段以进行下一个输入。但是,随着输入字段的恢复,保存的数据会再次随着输入字段而更改!谁能帮我解决这个问题?
公共 InputField 输入;公共按钮确认;
// Update is called once per frame
void Update()
{
confirm.onClick.AddListener(readchartLabelInputOnClick);
Debug.Log(PlayerPrefs.GetString("chartLabel"));
}
public void readchartLabelInputOnClick()
{
PlayerPrefs.SetString("chartLabel", input.text);
input.text = "Enter Text...";
}
解决方案
我提出了一个替代解决方案。
我会首先在场景中的按钮(in OnClick()
)中放置一个方法以避免调用Update()
,当然该方法也将在脚本中,在脚本中,当启动时,它会获取文本input.text
然后删除它input.text = ""
如果你放了placeholder
一个在inputfield
场景中,您甚至不需要从脚本中输入“输入文本...”,而且您不必每次都删除它来插入文本。
推荐阅读
- networking - 如何从不同的网络中删除给定的静态 IP?
- node.js - SendGrid - 如何从使用动态模板发送的一些电子邮件中删除取消订阅链接
- jquery - 当文档加载不触发子元素CSS转换时的jQuery addClass
- azure - 从 http1(会话 id)到 http2 的逻辑应用参数
- java - 如何从 Saxon 的扩展函数返回文档节点?
- kiwi-tcms - 在 Kiwi TCMS 中创建新的测试计划时不显示产品和版本
- node.js - 使用 docker-compose 一次运行多个 Docker 容器
- angular - 如何获取firebase数据库中的列表项
- ruby-on-rails - Gem::LoadError: sqlite3 不是包的一部分。将其添加到您的 Gemfile
- snowflake-cloud-data-platform - CURRENT_SESSION 的用例