如何设置文本字段的值然后进行编辑?使用firebase,我为包含名称的用户帐户创建了一个字典。对于第一个文本字段,文本字段文本等于用户的名称。当用户开始使用该文本字段编辑名称时,另一个名为“username”的变量应该存储新的文本/值,但事实并非如此。用户可以编辑文本字段本身,但“username”变量不存储已编辑的版本,只存储存储在firebase中的原始版本(user.name)。这是我的代码:
var username: String?
case 0:
firstfewCells.ttField.text = user.name
self.username = firstfewCells.ttField.text
我想要做的是使文本字段可编辑,以便在按下保存按钮时文本字段中的内容将被存储
答案 0 :(得分:1)
您已将username
的值设置为user.name
,但很可能该值是副本,并且您不应期望更改“文字字段”会导致更改“用户名”。
您可以通过uitextfielddelegate
方法[{1}}(我将留给您谷歌)来收听文本字段的更改。
但是,我建议您这样做,如果您只是想提供一个类似于表单的界面以允许用户更改将被POST到服务器的值,那么只需在保存时获取文本字段的值或按下提交按钮(textfielddidchange
)。这简化了您的代码,因为您将消除不必要的状态以及保持同步所带来的所有复杂性。
答案 1 :(得分:0)
{{1}}
如果要将此信息发送到ViewController,则需要创建一个委托。如果你需要,你可以问。但是有很多教程解释它是如何工作的。