暂时禁用UITableView中的“删除”按钮

时间:2013-04-18 16:14:39

标签: ios uitableview

我正在处理的应用程序上的“删除”按钮在点按时进行服务器调用。

然而,当我们等待服务器响应时,我可以多次单击“删除”按钮,从而发出多个服务器请求。

我正在寻找解决方案,我想要禁用“删除”按钮,直到我从服务器收到回复。这可能吗?还是有另一种优雅的解决方案吗?或者我首先做错了什么。

谢谢!

2 个答案:

答案 0 :(得分:4)

当您在表格单元格中显示“删除确认”按钮,然后用户点击该按钮时,您可以使用通常的commitEditingStyle委托方法处理删除。

但是听起来好像你启动了一个服务器请求,当它正在执行时,删除按钮仍在视图中。这意味着在服务器请求完成之前,您实际上不会删除该行。

如果是这种情况,那么在commitEditingStyle方法中应该做的是立即重新加载要删除的行。这将删除删除按钮。然后启动服务器请求。完成服务器请求后,您可以根据需要更新数据源,然后删除该行或根据需要重新加载表或部分。

向单元格添加一个小活动指示器可能会很不错,让用户知道正在处理该行。您可能还希望阻止用户在服务器请求正在进行时再次在该行上滑动。

答案 1 :(得分:0)

第一次点按时使用此方法:

[deleteButton setEnabled:NO];

然后在收到服务器的响应时启用它。