2010-01-05 57 views

回答

1

您首先在该按钮上放置一个处理程序(Touch Up Inside事件)。那么,你有几种方法。

对于每个文本框,您可以在处理程序中为每个文本属性设置为零。

您可以浏览视图的子视图集合,并为每个遇到的文本框设置text属性为nil。这不影响视图上的文本框。如果视图层次被嵌套,你将不得不递归。

您可以将指定范围内的数字标签分配给每个文本框,然后遍历该范围,通过标签检索视图并将文本设置为零。这是通常在Win32 API中完成的,以防万一。

+0

苹果教程可能会建议你这样做的第一种方法。 – 2010-01-05 17:38:25

+0

所以财产只会说无一次,我连接到每个文本字段?或者该属性说TextField1,TextField2,TextField3 ==零等? – HollerTrain 2010-01-05 17:47:51

+0

@HollerTrain:它是:TextField1.text = TextField2.text = TextField3.text = nil; – 2010-01-05 19:12:28

2

如果您经常需要全屏清除文本字段,可能值得您花时间用clearAllText方法创建UITextField的子类。然后,您可以将消息广播到视图中的所有子视图,并且使用该方法的消息将清除其文本,而不使用它的人将忽略它。 (更整齐地说,您可以在发送消息之前检查个别子视图是否回复该消息。)这样,您就不必跟踪哪些对象是文本字段,哪些不是。如果您有一个动态布局,其中文本字段的数量会发生变化,这将非常有用。

+0

属性是一个getter和一个setter。你可以用nil作为参数广播一个setter call吗? – 2010-01-05 21:22:11

相关问题