检索特定UITextField标记的UITextField文本

时间:2011-04-19 01:08:00

标签: iphone objective-c cocoa-touch

喂 只是想知道你是怎么做的..

Iv创建了一些代码,可以自动创建用户输入的一定数量的UITextField。 每个UITextfield都有一个自动创建的set标记。

然后,用户将其值输入到每个UITextField中。

我想从UITextFields中检索与标签相对应的输入文本。

我以为我差不多了:

NSString * tmpV = (NSString*)[choiceTextField.text viewWithTag:result];

其中result是递增,choiceTextField是UITextField。有了这个,我得到一个问题,没有定义实例,我不能这样做,因为UITextFields是在不在xib上的代码中生成的。

总而言之,基本上希望从具有特定标记的UITextField中检索文本。

由于 丹

3 个答案:

答案 0 :(得分:6)

UITextField *yourTextField = (UITextField *)[self.view viewWithTag:result];
NSString *getText = myTextField.text;

希望这有帮助

答案 1 :(得分:2)

您的文本字段必须是父视图的子视图。您需要在父视图的视图控制器中编写以下内容:

NSString *text = ((UITextField*)[self.view viewWithTag:result]).text;

答案 2 :(得分:0)

请使用Hetal Vora的解决方案:看起来更清洁!

-viewWithTag可以在任何视图上调用,并在其所有子视图中搜索与该标记匹配的视图。因此,您可以通过在层次结构中位于其上方的任何视图上调用它来找到您的UITextField。例如,您可以在包含文本字段的视图控制器视图上调用它,如下所示:

NSString *tmpV = [[myViewController.view viewWithTag:result] text];

如果您已经在视图控制器的类中,则可以使用:

NSString *tmpV = [[self.view viewWithTag:result] text];

第二个想法,以下可能更正确&将避免任何编译器错误:

UITextField *myTextField = (UITextField *)[self.view viewWithTag:result];
NSString *tmpV = myTextField.text;