在切换视图时清除文本字段和文本视图视图的数据

Posted

技术标签:

【中文标题】在切换视图时清除文本字段和文本视图视图的数据【英文标题】:Clearing data of the textfields and textviews view on toggling of a view 【发布时间】:2016-02-04 20:24:56 【问题描述】:

假设我有一个按钮和一个包含多个字段的视图,如文本字段、文本视图等。文本字段和文本视图中有一些输入数据。当我单击按钮时,视图会隐藏,当我再次单击时,它会显示出来。我想要的是,当视图重新出现时,所有输入字段都应该清楚。我可以通过将其设置为empty string (@"") 手动清除文本字段数据,但我想要一些更清洁的解决方案,它将清除所有视野。我也尝试过self.toggleView = nil,但它不起作用。

【问题讨论】:

Xcoder 你觉得我的回答对你有帮助吗? 【参考方案1】:

这样做的一个选择是

- (void)clearTextFieldOrTextViews
    for (UIView *subview in self.subviews)
      
        if ([subview isKindOfClass:[UITextField class]])
            textField = (UITextField*)subview;
            textField.text = @"";
        else if([subview isKindOfClass:[UITextView class]])
            textView = (UITextview*)subview;
            textView.text = @"";
        else if([subview isKindOfClass:[UIButton class]])
            button = (UIButton*)subview;
            [button setTitle:@"" forState:UIControlStateNormal];
        
      

【讨论】:

我有文本字段、文本视图和按钮。我正在寻找可以清除整个视图数据的东西。 您想删除文本字段、文本视图和按钮,还是只想从中删除文本? 只想清除字段中的数据。但关键是,我不想在所有领域手动操作。 您无需手动操作。只需调用此方法,它将适用于该视图。

以上是关于在切换视图时清除文本字段和文本视图视图的数据的主要内容,如果未能解决你的问题,请参考以下文章

滚动列表视图时文本视图中的数据切换

从一个视图控制器切换到另一个视图控制器时出错

Xcode 5编程一个按钮以在单击时切换视图(不是segue)

以编程方式切换选项卡时清除根视图控制器的变量

无法从另一个视图控制器更改 UILabel 的文本

使用基于 XIB 的选项卡栏应用程序在所有视图中“清除所有”文本字段中的值的最佳方式