【问题标题】:Swift - Prototype Cell get value from TextFieldSwift - Prototype Cell 从 TextField 获取值
【发布时间】:2016-05-25 17:17:00
【问题描述】:

我有一个带有 2 个原型单元格的 tableView。

第一个 Prototype Cell 在右侧有一个 TextField 和 Button。假设它是“Cell1”

第二个原型单元只有一个标签。假设它是“Cell2”

我只想在第一个单元格中输入一些内容,然后点击按钮:

1) 创建一个新的 Cell2 Prototype Cell Row

2) 新的 Cell2 Prototype Cell Row 必须有一个标签,其中包含我在 Cell1 TextField 上输入的值。

因此,通过这种方式,我可以获得具有不同 TextField 值的 Cell2 行列表。

我知道如何实现第一个(创建的新行)但不知道第二个。

当 segue 开始时,我只有像这张照片一样的 Cell1 原型:

当我点击 + 按钮时,我有一个新的“Cell2”原型行。 这种Cell每次都要有Textfield的标签。

如何每次获取 TextField 的值并将其传递给新创建的 Cell2 行标签?

【问题讨论】:

  • 那就这样吧。问题是什么?
  • 我的问题是我不能做我描述的第二个。有什么想法吗?
  • 当然,我知道我会怎么做。你做得怎么样?
  • 每次用户点击按钮时,我都会通过将新的字符串值 (Textfield.text) 附加到数组来创建新行(单元格 2 原型)。然后func tableView(numberOfRowsInSection)创建一个现在行,因为返回Array.count。但我无法弄清楚如何每次传递 TextField 文本。
  • 到目前为止听起来不错。请记住,您的数组索引必须对应于表的行索引。这样,您的 cellForRowAtIndexPath 实现将知道如何设置标签。

标签: ios swift uitableview


【解决方案1】:

您的困难很可能只是您的数据模型有点过于简单。请记住,所有工作都必须由您的 cellForRowAtIndexPath: 实施咨询数据模型来完成。因此,数据模型必须知道每一行的两件事:

  1. 这是原型 1 行还是原型 2 行?

  2. 该行的文本字段(如果这是原型 1 行)或标签(如果这是原型 2 行)值是多少?

给定一个携带该信息的数据结构,如何进行就很清楚了:

  • 当用户在文本字段中键入时,文本字段委托应在该行将文本字段的文本输入到模型中。

  • 1234563当前行。然后我们将该行也插入到表中,以便为新行调用我们的cellForRowAtIndexPath:

根据这些简单的说明,构建一个您正在尝试做的事情的工作示例非常容易:

【讨论】:

  • 添加了一个截屏视频,显示我的说明确实有效! :)
猜你喜欢
  • 2016-10-05
  • 1970-01-01
  • 1970-01-01
  • 2014-12-21
  • 1970-01-01
  • 1970-01-01
  • 2021-07-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多