xcode 6.3.2, UITableViewCell 往左滑动没有红色的删除按钮

2015-06-02 20:35:01 +08:00
 xenme
往左边滑动之后,右边空白
已经实现了:
func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath)
3565 次点击
所在节点    iDev
9 条回复
shanigan
2015-06-02 21:28:31 +08:00
你需要这个delegate来enable slide to delete

optional func tableView(_ tableView: UITableView, canEditRowAtIndexPath indexPath: NSIndexPath) -> Bool

另外从截图上来看你的table view已经是在editing mode了,你是不是已经用了

func setEditing(_ editing: Bool, animated animate: Bool) ?

如果你要滑动删除的话 tableview.editing has to be NO.
xenme
2015-06-02 21:42:05 +08:00
@shanigan 第一个已经实现了,直接 return true,而且我看文档,default 都是 edittable,不过我还是实现了。
setEditing 我也实现了,注释掉之后也是一样。

往左滑动的话,tableview.editing 应该会自动变成 YES 吧,而且 editingStyle也应该变成 Delete。

搜了各种删除的教程和视频,应该只要实现之前那一个就 OK 了,不知道是不是 XCODE 或者 Simulator 的 BUG。
=======
xcode 6.3.2 (6D2105), Simulator Version 8.3 (SimulatorApp-565.9),没有证书,没法真机测试。
shanigan
2015-06-02 21:46:52 +08:00
@xenme 你截图中左边的删除按钮显示你的tableview已经是在editing mode了。你向左滑动肯定不会出现删除按钮。这么基本的一个功能是不可能会有bug的。
xenme
2015-06-02 21:53:38 +08:00
@shanigan 我又补充了一个全的代码
shanigan
2015-06-02 22:14:03 +08:00
try adding "override" to both delegates?
xenme
2015-06-02 22:25:49 +08:00
@shanigan 这几个都是实现 DataSource 和 Delegate的 protocol,是不需要 override 的。
加了 override,xcode 直接报错。Method does not override any method from it's superclass,所以,也不是这个问题。
black
2015-06-03 01:56:34 +08:00
从你提供的线索看来,很大可能是你的 table view 宽度超过了屏幕宽度,检查一下你的布局约束吧。
shanigan
2015-06-03 06:44:27 +08:00
我回到家之后开了一个小的test project,只要你实现了commitEditingStyle那个delegate,滑动删除按钮是肯定会出现的。

我也觉得@black是正确的,从你的截图来看,你的table cell已经被滑动到左边去了,看不到按钮唯一的解释职能是你的tableview超宽。加一个constraint应该就可以。

如果你这个view没有其他组件的话,你完全可以直接用UITableviewController,拖拽一个table view到view controller的话你会碰到像这样的麻烦。
SeanChense
2015-06-03 08:37:38 +08:00
@black 说的应该是正解。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/195615

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX