Changing the delete accessory view in a UITableViewCell

为君一笑 提交于 2020-01-09 18:38:28

问题


Is it possible to change the view shown in response to a left to right "I want to delete this row" swipe in a UITableView's UITableViewCell?

Currently the 'delete' button seems to ignore all of the other UITableViewCell customisation options.


回答1:


The tricky thing about deleting cells is this: when you swipe left to right to show the "delete" button, the UITableViewCell moves to the UITableViewCellStateShowingDeleteConfirmationMask state, but doesn't set its UITableViewCellStateEditingMask state. This means you can't change the accessoryView for the editing state.

The way to get around this is to look at the willTransitionToState: method of UITableViewCell. What you can do is intercept the call to this method that would put your cell in the delete confirmation state and show your own views instead of the "Delete" confirmation button that normally gets shown.

For more info, look at the docs for willTransitionToState: for UITableViewCell.



来源:https://stackoverflow.com/questions/858697/changing-the-delete-accessory-view-in-a-uitableviewcell

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!