【问题标题】:uiTableView problem - xcodeuiTableView 问题 - xcode
【发布时间】:2011-04-04 11:45:58
【问题描述】:

我是 xcode 的新手,我正在努力学习。我已按照本教程http://p2p.wrox.com/content/articles/creating-simple-ipad-application-table-view 在 iPad 中显示 UITableView 进行操作,但我有一个问题:

  1. 是否可以在运行时更新表格视图?例如,我想要两个按钮,当我按下它们时,一个会删除内容,另一个会添加内容?

【问题讨论】:

  • 我该怎么做 [table reloadData] ?本教程没有创建tableview对象,他只是将其链接到其中?

标签: iphone objective-c xcode ipad sdk


【解决方案1】:

是的,你可以。您可以在UITableView上使用以下方法:

将这些调用封装在 beginUpdatesendUpdates 中,以确保动画在一个块中完成。

注意:

UITableView 之后立即调用相关的委托和数据源方法来获取可见单元格的单元格和其他内容。

因此,您需要确保您的数据源反映您新插入/删除的行。请查看Batch Insertion, Deletion, and Reloading of Rows and Sections 了解更多信息。

删除行

我认为值得注意的是,从表中删除行的更好方法(基于用户输入)是在 UITableViewDataSource 上实现 tableView:commitEditingStyle:forRowAtIndexPath: 方法。如果您实现此方法,则 滑动删除 功能将在您的表格视图中可用。

【讨论】:

    【解决方案2】:

    是的,只需清空您的数组并重新加载表格..

    [array RemoveAllObjects];
    [table reloadData];
    

    如果您想添加内容,请将内容添加到数组并使用以下方法重新加载表格:

    [array addObject:newdata];
    [table reloadData];
    

    【讨论】:

      【解决方案3】:

      要更新您的表格视图,您可以在更新数据源后调用 reloadData,例如,如果您使用的是数组,则首先更新您的数组,然后再调用 reloadData。

      【讨论】:

        猜你喜欢
        • 2022-01-14
        • 2023-03-29
        • 1970-01-01
        • 2018-05-01
        • 2021-11-30
        • 1970-01-01
        • 2014-12-01
        • 2011-02-03
        • 2012-05-26
        相关资源
        最近更新 更多