我在导航栏中有一个带有editButtonItem的UITableView。我希望每当用户点击editButtonItem时都会播放一个tap音。现在,当点击编辑按钮时,我正在使用以下方法播放敲击声音
- (void)setEditing:(BOOL)editing animated:(BOOL)animated {
//Code to play the tap sound file
[super setEditing:editing animated:animated];}
但我遇到的问题是,当用户滑动一个tableviewcell&删除按钮显示,这不是我想要的。所以,我的问题是,是否有更好的方法来检测何时点击editButtonItem?
答案 0 :(得分:1)
点击编辑按钮时,以下代码将播放声音 ONLY 。点按完成时,它将无法播放声音。此外,当您滑动单元格时,声音不应播放。
- (void)willTransitionToState:(UITableViewCellStateMask)state
{
if (state == UITableViewCellStateShowingDeleteConfirmationMask) {
swipedToDelete = YES; // BOOL ivar
}
}
- (void)setEditing:(BOOL)editing animated:(BOOL)animated
{
[super setEditing:editing animated:animated];
if (editing && !swipedToDelete)
{
// Play sound
}
if (swipedToDelete) {
swipedToDelete = NO;
}
}