【发布时间】:2011-03-14 16:53:54
【问题描述】:
这里有很多类似的问题,但我认为没有一个专门问这个问题,即代码中有没有办法强制红色删除按钮出现在 UITableView 行的右侧?
我问的原因是我正在尝试使用两个 UISwipeGestureRecognizers 来改变 tableview 的行为:
单指滑动调用自定义操作(而不是显示红色删除按钮,这就是它现在的行为方式),并且
双指滑动调用默认的单指滑动行为,即显示红色删除按钮。
我已经浏览了 SDK 文档,但我找不到任何方法可以导致该红色按钮出现,这让我认为如果不从头开始手动创建红色删除按钮和试图让它模仿内置的行为。
非常感谢任何帮助。
【问题讨论】:
-
对不起,如果我没有抓住重点,但这难道不是诀窍吗? [单元组编辑:YES 动画:YES];
-
这是我尝试的第一件事。当您点击 UITableViewController 的
editButtonItem时,会发生同样的事情,即它会显示该单元格的编辑附件,在大多数情况下是蓝色的小细节披露指示器,而不是红色的删除按钮。由于不存在UITableViewCellAccessoryDeleteButton与并行UITableViewCellAccessoryDetailDisclosureButton这样的东西,因此在单元格上调用setEditing:并没有帮助。有一个[UITableCellView showingDeleteButton],但它是一个只读属性:( -
您找到解决方案了吗?我有完全相同的问题(我的删除机制不是两指滑动,而是一个按钮)。
-
还没有 - 根据 iOS 5 SDK 文档,UITableViewCell
showingDeleteConfirmation属性仍然是只读的,即使UITableViewCellStateShowingDeleteConfirmationMask已公开并且可以反应在状态转换回调中,我看不到手动触发这些状态转换的方法,这样红色的删除按钮就会出现。 -
我们可以尝试,在调用 setEditing:YES 动画:NO 之后,以编程方式点击红色按钮然后隐藏它吗?我希望删除按钮以这种方式出现。当然,我们必须防止或撤消由红色按钮出现引起的缩进。
标签: iphone uitableview uigesturerecognizer