【问题标题】:UItextfield Deleting textUItextfield 删除文本
【发布时间】:2012-06-06 07:09:17
【问题描述】:

我有一个奇怪的问题。

我有 3 个部分的 tableview

一个是uitextfield,一个是输入按钮,最后一个是搜索按钮。

问题是假设我在 uitextfield 上键入“波士顿”,然后当我点击按钮类型(另一个视图)时,我可以在选择类型后选择搜索类型,当我回到家中,我在 uitextfield 中键入波士顿它消失了,我的意思是它变成空白,然后我必须再次输入 Boston,因为它是从类型视图到主视图,而不会从任何文本字段中自动删除,我该如何保持它。

请帮忙

提前致谢

已编辑

我将不得不重新加载表格视图,因为我选择的任何类型都会作为标签子视图显示在按钮上,并且按钮位于表格视图上,因此表明我将不得不重新加载表格视图,但重新加载表格视图也会重新加载 uitextfield部分。

我们是否可以指定应该重新加载哪个部分或类似的东西

先谢谢了

【问题讨论】:

  • 当您从类型视图中重新加载表格视图?然后您必须将文本字段值保存在某个字符串中并在返回主视图时显示该字符串。
  • 当您从“搜索类型选择”返回时,您可能会重新启动之前输入的视图,因此组件是新的,两种解决方案,1.您不应该重新创建/启动再次查看视图以不离开您输入的文本,并且 2. 在进行选择之前最好将文本字段值保存在本地,然后从选择返回后读取并在 textField 中显示该值。希望对你有帮助

标签: iphone objective-c ios ipad sdk


【解决方案1】:

没有更多信息有点难,但是 -

1) 你确认文本域的委托没有删除文本域吗?检查文本字段是否完成编辑。

2) 在第一个 tableview 中放置一个断点。在 tableviewcell 的单元格中,可能您的 tableview 已重新加载,并且您将 textfield 替换为新的。

祝你好运。

【讨论】:

    【解决方案2】:

    当您转到您的搜索按钮类型时,您可能应该保存UITextField 的值。在您的 viewWillAppear: 方法中,您重新填充该文本。

    -(void)viewWillAppear:(BOOL)animated {
    
        if([tmpText length] > 0)
           [yourTextField setText:tmpText];
    }
    
    
    -(void)typeOfSearchAction {
      ....
      tmpText = [yourTextField text];
    }
    

    所以现在当您收到 viewWillAppear 调用时,假设它位于不同的 UIViewController 中,您可以重新填充文本。否则,您可以采用逻辑,并将 UITextField 的文本值存储到字符串中。

    【讨论】:

      【解决方案3】:

      当弹出主视图时,我认为您在 -(void)viewWillApear{} 方法中重新加载表格或 UITextField 的文本。不要在 viewWillApear{} 中重新加载表格或 UITextField 的文本。它将重置与表格单元格或 UITextField 关联的值,因为当您弹出 viewController 时,会调用 viewWillApear 方法。

      希望这会有所帮助..

      【讨论】:

        猜你喜欢
        • 2013-04-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-06-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多