【问题标题】:iOS dynamically change the content of a cell with a date pickeriOS 使用日期选择器动态更改单元格的内容
【发布时间】:2012-04-30 16:35:08
【问题描述】:

我有一个嵌入了 UITableView 的 UIView。 同一视图中的一个文本字段应控制表格的单元格编号。 如果用户输入数字 4,TableView 应立即更改其单元格编号以反映用户输入的内容。 单元格的内容将类似于“请选择”。

然后,当用户选择一个小区时,将出现日期选择器,让用户选择日期/时间,然后,当拾取器被拆除时,该单元格应更改为所选择的日期/时间。 p >

这两天多以来我都快疯了。我没有在这里放任何代码,因为我真的不知道从哪里开始,到目前为止我尝试过的所有事情都完全失败了。

如果有人能引导我找到解决方案,我将不胜感激。 谢谢。

【问题讨论】:

    标签: ios uitableview datepicker


    【解决方案1】:

    如果您在 iPad 上,您可以在用户选择它时从所选单元格中显示一个 UIPopOverController。在 iPhone 上,您可以呈现一个模态视图控制器。

    对此,请参阅-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

    当 UIDatePicker 的呈现视图控制器被解除时,您必须实现处理从 UIDatePicker 获取值的代码。此外,您必须将 UIDatePicker 托管在视图控制器中,因为(据我所知)无法单独呈现它。

    所以,我提出的解决方案是:

    1. 创建一个新的视图控制器来托管您要呈现的 UIDatePicker。
    2. 在该视图控制器上,放置“确定”和“取消”按钮。
    3. 向该视图控制器添加一个引用您的“主”视图控制器的属性。这样,当您选择完日期后,承载 UIDatePicker 的视图控制器就可以向“主”视图控制器发送消息。
    4. 在您的“主”视图控制器中,为您的 UITableView 处理 tableView:didSelectRowAtIndexPath: 事件。
    5. 呈现视图控制器以向用户显示 UIDatePicker。
    6. 如果用户选择“确定”,则关闭模态/popOver 视图控制器并使用新信息更新单元格(您可能需要一个 NSDate 值数组并调用[tableView reloadData] 来执行此操作)。
    7. 如果用户选择“取消”,则关闭模式/popOver 视图控制器并且不要更新任何内容。

    【讨论】:

    • 非常感谢。这正是我想要的。
    【解决方案2】:

    我认为this tutorial 会帮助你.. 我也跟着..我也遇到了和你一样的问题..

    【讨论】:

      猜你喜欢
      • 2023-04-09
      • 1970-01-01
      • 2019-06-02
      • 1970-01-01
      • 2017-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多