如何以编程方式删除UITextField的内容?

时间:2011-07-03 03:14:20

标签: ios uitextfield

我正在编写一个iPhone应用程序,其中包含许多需要用户输入大量数据的UITextField。我希望有一个简单的“删除”工具,允许用户丢弃他们放入多个字段的任何数据。

我几天来一直在努力解决这个问题。我似乎无法找到进入单个文本字段和更改文本的方法。无论我尝试什么,我的应用程序都会向我抛出错误。

2 个答案:

答案 0 :(得分:2)

您可以使用接口构建器中的tag属性为序列中的每个文本字段分配标记,然后像这样获取textField

UITextField *txtf = (UITextField*)[self.view viewWithTag:aTagValue];

txtf.text = @""; or nil;

答案 1 :(得分:0)

有几种解决方法。

您可以编写代码来单独擦除每个代码。为此,您需要为每个IBOutlet创建一个text,并为其IBOutlet属性分配一个空字符串。如果你只有几个字段,那是最简单的。如果你有更多,那就不太好了。

您可以将它们作为公共容器视图的所有子项,并遍历其子视图。这样,您只需要连接一个IBOutletCollection

您可以递归整个视图层次结构并删除所找到的所有文本字段。

Apple没有很好地记录的另一种方法是使用IBOutletCollection。这样,您可以将所有文本字段分配给{{1}}并将其循环。这可能是最简单,最直接的方式。